WIP: Bound cold growth and keep child-tag groups fast #755

Closed
kayg wants to merge 3 commits from perf/cold-growth-fix3 into perf/cold-growth-fix2
Owner

Cold startup work uses bounded identity/stamp snapshots outside foreground metadata locks, with candidates rechecked before commit. Derived stamps, scan-state changes, task path keys and checkbox locations stay compact. Child-tag groups read stable public ids from a covering membership range, removing a task-row lookup per child while mutable task fields remain in their own row. Field edits keep unchanged memberships untouched.

Builds on #727. Derived cache versions trigger a rebuild on next open. Markdown parsing remains in the existing format modules.

Measured on perf-test-01 with HDD Homes, SSD state, guest caches dropped for every cold pass and unchanged limits:

Base notes + task notes Cold growth, runs 1 / 2 / 3 Child-tag p95, runs 1 / 2 / 3 Task gates
100000 + 100000 3.3487% / 3.4556% / 5.0302% 16.224 ms / 15.355 ms / 15.404 ms all pass
10000 + 10000 6.3728% / 6.2126% / 2.8229% 2.523 ms / 2.724 ms / 2.813 ms all pass

Original fix3 child-tag p95 at 100k was 30.951 / 25.139 / 27.988 ms, all over 25 ms. The covering-id change passes all task gates in all six fresh reports, each with 15 alternating cold pairs. Full task comparisons.

WIP: the additional full server check still fails 100k note-open p95 (18.336 ms > 15) and health readiness (590.659 ms > 300). Other blocking budgets and scenario correctness pass in that check. Earlier source failures, including the WIP 69.755-second cold-index tail, remain retained. The requested PR #727 and original WIP each have three full server reports; the final head has one additional full server report and three task reports per size. Final server comparison.

Validation: 509 scoped Rust tests passed across notes, tasks and memory (six existing ignored tests); affected file-stamp tests, strict clippy with -D warnings, formatting and release build pass. Real SyncClient tests run with frozen-lockfile Bun dependencies installed. The field-edit test also checks child groups while triggers forbid membership rewrites.

Profiles show about 1.197 GB of physical reads per cold pass in both variants, with additional task CPU and writes. perf counters are denied by the guest, so diagnostics use strace and process/I/O counters. Instrumented passes are excluded from gate repetitions. Historical dev cold values stop at list-ready; candidate cold timing includes shutdown, empty WAL and sync -f. Profile evidence.

Refs #686. Evidence is in issue comments and outside git; no limits changed.

Cold startup work uses bounded identity/stamp snapshots outside foreground metadata locks, with candidates rechecked before commit. Derived stamps, scan-state changes, task path keys and checkbox locations stay compact. Child-tag groups read stable public ids from a covering membership range, removing a task-row lookup per child while mutable task fields remain in their own row. Field edits keep unchanged memberships untouched. Builds on #727. Derived cache versions trigger a rebuild on next open. Markdown parsing remains in the existing format modules. Measured on perf-test-01 with HDD Homes, SSD state, guest caches dropped for every cold pass and unchanged limits: | Base notes + task notes | Cold growth, runs 1 / 2 / 3 | Child-tag p95, runs 1 / 2 / 3 | Task gates | |---|---|---|---| | 100000 + 100000 | 3.3487% / 3.4556% / 5.0302% | 16.224 ms / 15.355 ms / 15.404 ms | all pass | | 10000 + 10000 | 6.3728% / 6.2126% / 2.8229% | 2.523 ms / 2.724 ms / 2.813 ms | all pass | Original fix3 child-tag p95 at 100k was 30.951 / 25.139 / 27.988 ms, all over 25 ms. The covering-id change passes all task gates in all six fresh reports, each with 15 alternating cold pairs. [Full task comparisons](https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68714). WIP: the additional full server check still fails 100k note-open p95 (18.336 ms > 15) and health readiness (590.659 ms > 300). Other blocking budgets and scenario correctness pass in that check. Earlier source failures, including the WIP 69.755-second cold-index tail, remain retained. The requested PR #727 and original WIP each have three full server reports; the final head has one additional full server report and three task reports per size. [Final server comparison](https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68712). Validation: 509 scoped Rust tests passed across notes, tasks and memory (six existing ignored tests); affected file-stamp tests, strict clippy with -D warnings, formatting and release build pass. Real SyncClient tests run with frozen-lockfile Bun dependencies installed. The field-edit test also checks child groups while triggers forbid membership rewrites. Profiles show about 1.197 GB of physical reads per cold pass in both variants, with additional task CPU and writes. perf counters are denied by the guest, so diagnostics use strace and process/I/O counters. Instrumented passes are excluded from gate repetitions. Historical dev cold values stop at list-ready; candidate cold timing includes shutdown, empty WAL and sync -f. [Profile evidence](https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68627). Refs #686. Evidence is in issue comments and outside git; no limits changed.
Plan scan and metadata comparisons on blocking workers using bounded snapshots, then recheck identities and live rooms before committing. Append bounded durable scan-state changes and defer automatic allocator reclamation until bulk work finishes.

Store only live tag membership keys and join current task fields. Compact derived path keys and checkbox locations in the tasks cache codec, and rebuild cache version 16. Preserve fast tag counts and all durability barriers.

Cover snapshot races, key reuse, unchanged memberships, codec vectors and torn scan-state tails. Synchronize the crash test child before its next write.
Stopped because this host (Mac-backed VM) caches reads in host RAM, so its
cold-start numbers are not trusted; measurement moves to perf-test VMs.
Not reviewed; do not merge as is.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Cj2Q1hCskP8Frsk6X7EHw
Keep child-tag groups on a covering membership range
Some checks failed
CI / server (pull_request) Successful in 1m34s
CI / rust (pull_request) Failing after 21m33s
CI / web (pull_request) Failing after 43s
1d03e06f4a
Author
Owner

Starting the startup regression investigation on perf/cold-growth-fix3, base and current head 1d03e06f4a. I will compare cold startup on dev and this head at 100k notes using perf-run.sh, cache drops, strace and process I/O counters, and post the cause before changing code. Then I will run three fresh full server reports at each size and the task and Rust gates. The final task instruction to push only this branch takes precedence over the generic new-branch instruction. No merge or deployment.

Starting the startup regression investigation on perf/cold-growth-fix3, base and current head 1d03e06f4a1fb050c57ae0c99371b5440c2240e1. I will compare cold startup on dev and this head at 100k notes using perf-run.sh, cache drops, strace and process I/O counters, and post the cause before changing code. Then I will run three fresh full server reports at each size and the task and Rust gates. The final task instruction to push only this branch takes precedence over the generic new-branch instruction. No merge or deployment.
Author
Owner

The quota registration fix and readiness tests are implemented. The blocked-registration test failed before the fix (startup waited for watcher registration) and now passes, including initial accounting while registration is blocked. All 40 fsio tests pass. A real-binary test also passes: /healthz answers, the first upload is rejected with storage_quota when existing Home files fill the allowance, and an upload succeeds after the allowance is raised. Existing startup tests pass.

Strict clippy initially rejected direct File::create in the new test; it now uses the existing atomic write helper. Fresh fmt and strict clippy for memory, notes, tasks, fsio and calternal now pass. Scoped tests pass: memory 3, notes 455 with 6 existing ignored, tasks 51. Auth quota tests pass 2 with 1 existing ignored perf-only test. Independent read-only code review found no critical or important issues; it checked register-before-recount, initial admission, fallback polling and weak-reference ownership. The release build and final perf reports follow. No budget or format rules changed.

The quota registration fix and readiness tests are implemented. The blocked-registration test failed before the fix (startup waited for watcher registration) and now passes, including initial accounting while registration is blocked. All 40 fsio tests pass. A real-binary test also passes: /healthz answers, the first upload is rejected with storage_quota when existing Home files fill the allowance, and an upload succeeds after the allowance is raised. Existing startup tests pass. Strict clippy initially rejected direct File::create in the new test; it now uses the existing atomic write helper. Fresh fmt and strict clippy for memory, notes, tasks, fsio and calternal now pass. Scoped tests pass: memory 3, notes 455 with 6 existing ignored, tasks 51. Auth quota tests pass 2 with 1 existing ignored perf-only test. Independent read-only code review found no critical or important issues; it checked register-before-recount, initial admission, fallback polling and weak-reference ownership. The release build and final perf reports follow. No budget or format rules changed.
Author
Owner

All three fresh full server reports are complete at 6d801fc35c. startup.healthz p95 passes 3/3 at both sizes: 10k 99.726909 / 101.744509 / 79.749679 ms; 100k 155.622284 / 136.358095 / 150.769641 ms, all against the unchanged 300 ms budget. These are full reports with 5 warm starts, 3 cold starts and the 300-second idle window per size; 17 internal cache drops per report plus the perf-run preflight drop. No repetitions were replaced.

Each report exits 1 solely for the known 100k open.note budget failure. Gate output verbatim:

startup-server-1:
over budget: 100000 notes: open.note p95 21.8 > 15
startup-server-2:
over budget: 100000 notes: open.note p95 16.3 > 15
startup-server-3:
over budget: 100000 notes: open.note p95 20.4 > 15

The complete raw report tables and output are in comments 68786, 68804 and 68836 on #686. The first of six fresh task reports is now running. Those will verify cold growth, all five task gates and child-tag p95 before the branch is pushed.

All three fresh full server reports are complete at 6d801fc35c08c7739f0038793a4335fb6f36e43b. startup.healthz p95 passes 3/3 at both sizes: 10k 99.726909 / 101.744509 / 79.749679 ms; 100k 155.622284 / 136.358095 / 150.769641 ms, all against the unchanged 300 ms budget. These are full reports with 5 warm starts, 3 cold starts and the 300-second idle window per size; 17 internal cache drops per report plus the perf-run preflight drop. No repetitions were replaced. Each report exits 1 solely for the known 100k open.note budget failure. Gate output verbatim: ```text startup-server-1: over budget: 100000 notes: open.note p95 21.8 > 15 startup-server-2: over budget: 100000 notes: open.note p95 16.3 > 15 startup-server-3: over budget: 100000 notes: open.note p95 20.4 > 15 ``` The complete raw report tables and output are in comments 68786, 68804 and 68836 on #686. The first of six fresh task reports is now running. Those will verify cold growth, all five task gates and child-tag p95 before the branch is pushed.
Author
Owner

Startup regression fix finished at 6d801fc35c, on perf/cold-growth-fix3. Recursive quota watcher registration now runs on the quota worker rather than inside auth construction. Registration still precedes its repair recount, and upload admission still waits for initial accounting. Root cause profiles were posted before the fix in comment 68725.

Three fresh full server reports, with no replaced repetitions, the original 5 warm starts and 3 cold starts at each size, and the 300-second idle window:

Notes startup.healthz p95 report 1 report 2 report 3 Limit
10000 99.726909 ms 101.744509 ms 79.749679 ms 300 ms
100000 155.622284 ms 136.358095 ms 150.769641 ms 300 ms

Fresh task reports, each with 15 alternating cold pairs, cache drops and the original settled-shutdown, empty-WAL, sync endpoint:

Notes Cold growth reports 1 / 2 / 3 Child-tag p95 reports 1 / 2 / 3
10000 5.636199% / 7.443130% / 7.172440% 2.710018 ms / 2.628126 ms / 2.647361 ms
100000 5.155798% / 4.017258% / 4.270486% 15.591735 ms / 15.564333 ms / 15.303116 ms

Readiness tests: blocked native registration cannot block startup or initial usage accounting (failed before the fix, passed after); the real binary rejects the first upload after healthz when existing files fill quota and accepts it after quota increases. Fsio tests pass 40; existing startup tests pass 5 with 1 existing ignored latency test, plus the new quota test. Memory 3, notes 455, tasks 51 pass, with 6 existing ignored notes tests. Auth quota tests pass 2 with 1 existing ignored perf test. Independent review found no critical or important issue.

The known open.note storage-tiering failure is retained in the server gate output below and was not chased. No budget changed. Fixture Homes and state are deleted. Only product code and tests were committed; evidence remains in issue comments and the job evidence folder. No merge or deployment.

Rust gates, verbatim:

fmt: PASS
clippy -D warnings: PASS
scoped tests (memory, notes, tasks): PASS
auth quota tests: PASS
release build: PASS

Report and integrity gates, verbatim:

GATE startup.healthz 10000 report 1: p95 99.726909 ms <= 300 ms: PASS
GATE startup.healthz 100000 report 1: p95 155.622284 ms <= 300 ms: PASS
startup-server-1 harness output verbatim:
over budget: 100000 notes: open.note p95 21.8 > 15
process exit=1
GATE startup.healthz 10000 report 2: p95 101.744509 ms <= 300 ms: PASS
GATE startup.healthz 100000 report 2: p95 136.358095 ms <= 300 ms: PASS
startup-server-2 harness output verbatim:
over budget: 100000 notes: open.note p95 16.3 > 15
process exit=1
GATE startup.healthz 10000 report 3: p95 79.749679 ms <= 300 ms: PASS
GATE startup.healthz 100000 report 3: p95 150.769641 ms <= 300 ms: PASS
startup-server-3 harness output verbatim:
over budget: 100000 notes: open.note p95 20.4 > 15
process exit=1
startup-tasks-100000-1: growth 5.155798%; child-tag p95 15.591735 ms
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
startup-tasks-100000-2: growth 4.017258%; child-tag p95 15.564333 ms
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
startup-tasks-100000-3: growth 4.270486%; child-tag p95 15.303116 ms
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
startup-tasks-10000-1: growth 5.636199%; child-tag p95 2.710018 ms
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
startup-tasks-10000-2: growth 7.443130%; child-tag p95 2.628126 ms
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
startup-tasks-10000-3: growth 7.172440%; child-tag p95 2.647361 ms
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
FIXTURE_CLEANUP=PASS
BUDGETS_UNCHANGED=PASS
BINARY_HASHES=PASS
ALL_REPORTS_RETAINED=PASS
HEAD=6d801fc35c08c7739f0038793a4335fb6f36e43b
REQUESTED_STARTUP_AND_TASK_GATES=PASS

Full report comments:

Push result, verbatim:

To ssh://10.69.69.52:2222/kayg/calternal.git
   1d03e06f..6d801fc3  HEAD -> perf/cold-growth-fix3

Forgejo PR #755 head after push: 6d801fc35c.

Startup regression fix finished at 6d801fc35c08c7739f0038793a4335fb6f36e43b, on perf/cold-growth-fix3. Recursive quota watcher registration now runs on the quota worker rather than inside auth construction. Registration still precedes its repair recount, and upload admission still waits for initial accounting. Root cause profiles were posted before the fix in comment 68725. Three fresh full server reports, with no replaced repetitions, the original 5 warm starts and 3 cold starts at each size, and the 300-second idle window: | Notes | startup.healthz p95 report 1 | report 2 | report 3 | Limit | |---|---:|---:|---:|---:| | 10000 | 99.726909 ms | 101.744509 ms | 79.749679 ms | 300 ms | | 100000 | 155.622284 ms | 136.358095 ms | 150.769641 ms | 300 ms | Fresh task reports, each with 15 alternating cold pairs, cache drops and the original settled-shutdown, empty-WAL, sync endpoint: | Notes | Cold growth reports 1 / 2 / 3 | Child-tag p95 reports 1 / 2 / 3 | |---|---|---| | 10000 | 5.636199% / 7.443130% / 7.172440% | 2.710018 ms / 2.628126 ms / 2.647361 ms | | 100000 | 5.155798% / 4.017258% / 4.270486% | 15.591735 ms / 15.564333 ms / 15.303116 ms | Readiness tests: blocked native registration cannot block startup or initial usage accounting (failed before the fix, passed after); the real binary rejects the first upload after healthz when existing files fill quota and accepts it after quota increases. Fsio tests pass 40; existing startup tests pass 5 with 1 existing ignored latency test, plus the new quota test. Memory 3, notes 455, tasks 51 pass, with 6 existing ignored notes tests. Auth quota tests pass 2 with 1 existing ignored perf test. Independent review found no critical or important issue. The known open.note storage-tiering failure is retained in the server gate output below and was not chased. No budget changed. Fixture Homes and state are deleted. Only product code and tests were committed; evidence remains in issue comments and the job evidence folder. No merge or deployment. Rust gates, verbatim: ```text fmt: PASS clippy -D warnings: PASS scoped tests (memory, notes, tasks): PASS auth quota tests: PASS release build: PASS ``` Report and integrity gates, verbatim: ```text GATE startup.healthz 10000 report 1: p95 99.726909 ms <= 300 ms: PASS GATE startup.healthz 100000 report 1: p95 155.622284 ms <= 300 ms: PASS startup-server-1 harness output verbatim: over budget: 100000 notes: open.note p95 21.8 > 15 process exit=1 GATE startup.healthz 10000 report 2: p95 101.744509 ms <= 300 ms: PASS GATE startup.healthz 100000 report 2: p95 136.358095 ms <= 300 ms: PASS startup-server-2 harness output verbatim: over budget: 100000 notes: open.note p95 16.3 > 15 process exit=1 GATE startup.healthz 10000 report 3: p95 79.749679 ms <= 300 ms: PASS GATE startup.healthz 100000 report 3: p95 150.769641 ms <= 300 ms: PASS startup-server-3 harness output verbatim: over budget: 100000 notes: open.note p95 20.4 > 15 process exit=1 startup-tasks-100000-1: growth 5.155798%; child-tag p95 15.591735 ms GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 startup-tasks-100000-2: growth 4.017258%; child-tag p95 15.564333 ms GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 startup-tasks-100000-3: growth 4.270486%; child-tag p95 15.303116 ms GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 startup-tasks-10000-1: growth 5.636199%; child-tag p95 2.710018 ms GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 startup-tasks-10000-2: growth 7.443130%; child-tag p95 2.628126 ms GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 startup-tasks-10000-3: growth 7.172440%; child-tag p95 2.647361 ms GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 FIXTURE_CLEANUP=PASS BUDGETS_UNCHANGED=PASS BINARY_HASHES=PASS ALL_REPORTS_RETAINED=PASS HEAD=6d801fc35c08c7739f0038793a4335fb6f36e43b REQUESTED_STARTUP_AND_TASK_GATES=PASS ``` Full report comments: - startup-server-1: https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68786 - startup-server-2: https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68804 - startup-server-3: https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68836 - startup-tasks-100000-1: https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68863 - startup-tasks-100000-2: https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68871 - startup-tasks-100000-3: https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68875 - startup-tasks-10000-1: https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68876 - startup-tasks-10000-2: https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68878 - startup-tasks-10000-3: https://git.kayg.org/kayg/calternal/issues/686#issuecomment-68880 Push result, verbatim: ```text To ssh://10.69.69.52:2222/kayg/calternal.git 1d03e06f..6d801fc3 HEAD -> perf/cold-growth-fix3 ``` Forgejo PR #755 head after push: 6d801fc35c08c7739f0038793a4335fb6f36e43b.
Author
Owner

Independent verification started on branch review/755-tests at base/head 6d801fc35c. Reviewing the whole chain against dev d83e54db, quota readiness windows and crash/migration correctness, and overlap with PR #754. No merges, deployments or perf workloads.

Independent verification started on branch review/755-tests at base/head 6d801fc35c08c7739f0038793a4335fb6f36e43b. Reviewing the whole chain against dev d83e54db, quota readiness windows and crash/migration correctness, and overlap with PR #754. No merges, deployments or perf workloads.
Author
Owner

P1: quota admission can use stale totals while background registration is blocked. Reproducer: hold Usage.watcher mutex, call background(), ensure() once on an empty Home, write ten bytes with std::fs::write, then call ensure() again. bytes(person) remains 0, expected 10; a one-byte upload with quota 10 would be admitted by Auth::admit. Independent regression outside_growth_after_first_admission_must_count_before_registration fails deterministically: left 0, right 10. Later registration recount repairs totals, but cannot undo an already acknowledged over-quota upload. Window mutation/reconciliation and abrupt process-exit/reopen companion tests pass. The first-upload test only covers existing files before the first ensure, so misses this second-admission case.

P1: quota admission can use stale totals while background registration is blocked. Reproducer: hold Usage.watcher mutex, call background(), ensure() once on an empty Home, write ten bytes with std::fs::write, then call ensure() again. bytes(person) remains 0, expected 10; a one-byte upload with quota 10 would be admitted by Auth::admit. Independent regression outside_growth_after_first_admission_must_count_before_registration fails deterministically: left 0, right 10. Later registration recount repairs totals, but cannot undo an already acknowledged over-quota upload. Window mutation/reconciliation and abrupt process-exit/reopen companion tests pass. The first-upload test only covers existing files before the first ensure, so misses this second-admission case.
Author
Owner

Overlap with PR #754

#755 6d801fc3; #754 967dd3e892

All files changed by both chains against dev:

  • Cargo.lock
  • crates/fsio/Cargo.toml
  • crates/fsio/src/beneath.rs
  • crates/fsio/src/usage.rs
  • crates/fsio/src/usage/watch.rs

Functions changed in both chains (including methods moved into watch.rs):

  • crates/fsio/src/beneath.rs: names
    #755 changed: entry_info, for_each_name, names
    #754 changed: child_name, child_stat, location, names, open, open_child, open_root, open_sub, verify_location
  • crates/fsio/src/usage.rs: background, moved, person, recount_using, refresh_using, walk, with_state
    #755 changed: background, directory_move_during_recount_retries_with_relative_paths, moved, person, person_key, recording, recount_uses_relative_keys_and_ignores_symlinks, recount_using, refresh_using, walk, with_state
    #754 changed: a_separate_state_root_counts_what_plugins_report, accounted_path, background, bulk_writes_and_published_folders_count_without_a_recount, drop, moved, person, reads_do_not_wait_for_the_counter_writer, recount, recount_preserves_concurrent_writes_and_deletes, recount_using, refresh, refresh_using, repair, repair_snapshot, stale_metadata_cannot_replace_a_newer_update, storage_failure, walk, with_state, writes_moves_trash_and_purge_update_without_a_recount, wrote
  • crates/fsio/src/usage/watch.rs: apply, start
    #755 changed: apply, background, deleted_paths_do_not_accumulate_without_periodic_recounts, outside_writes_and_directory_renames_repair_usage, poll, start, watch, watcher_registration_never_blocks_startup_or_initial_accounting
    #754 changed: a_file_removed_before_native_watch_install_is_transient, apply, fallback_recounts_when_due_even_with_queued_events, gather_until, gathering_stops_at_its_deadline_even_with_queued_events, native, run, start, sync_inodes, wait_for_work

Usage::background is changed in both chains but #755 moves it into watch.rs; start is a file-local function in #755 and module entry point in #754. The shared names do not imply equivalent interfaces. watch/apply and recount_using have incompatible event/state models.

How to combine:

  • Use #754's descriptor-relative containment, exact OsString child names, inode alias index, bounded event batches, retained measurement failures and inode-watch lifetime management as the quota implementation. Do not restore #755's lossy string names, path-based directory opens or unbounded event draining while resolving conflicts.
  • Port #755's borrowed directory iteration to #754's descriptor walker using OsStr callbacks and child_stat/open_child/location verification. Snapshot allocation reuse must preserve #754's File/Identity values, inode aliases, generation journal, subtree validation and failure reporting. It cannot be applied as a replacement recount_using body.
  • Preserve asynchronous registration in #754's existing watch::start/run implementation, but fix the shared first-snapshot/second-admission gap. Neither worker's eventual recount alone satisfies the strict readiness contract. Admission needs a trustworthy synchronized view during registration (or readiness/admissions must wait for this guarantee). Replay and validate changes before trusting the initial snapshot; retain synchronous accounting for app writes.
  • Merge dependency requirements in crates/fsio/Cargo.toml, then regenerate Cargo.lock rather than selecting one side. #754 needs its inode/kernel support as well as notify. Keep startup_quota.rs and all independent regression suites; re-run both suites on the combined implementation.
  • docs/perf/web.md also conflicts because the merge base is a779a46f, even though it is not in the intersection of changes relative to d83e54db. Keep only measurements supported by the combined head. No evidence should be copied into the repo.

merge-tree command: git merge-tree --write-tree 6d801fc3 origin/perf/idle-honest-2
Exit: 1 (conflicts); no worktree merge performed.

88720a7b6a234536fb96d33096549ce5ba57d9e2
100644 eeda9f6628 1 Cargo.lock
100644 8c46981362 2 Cargo.lock
100644 07b47a7c06 3 Cargo.lock
100644 0ef728454f 1 crates/fsio/Cargo.toml
100644 1e16efb5b3 2 crates/fsio/Cargo.toml
100644 f7c1d4b8bc 3 crates/fsio/Cargo.toml
100644 281a81a8e0 1 crates/fsio/src/beneath.rs
100644 6a9c877929 2 crates/fsio/src/beneath.rs
100644 c8e494f59f 3 crates/fsio/src/beneath.rs
100644 8e9c05c56c 1 crates/fsio/src/usage.rs
100644 438c0a7eb4 2 crates/fsio/src/usage.rs
100644 9c15cd2569 3 crates/fsio/src/usage.rs
100644 3d959e835c 2 crates/fsio/src/usage/watch.rs
100644 06b136ae7e 3 crates/fsio/src/usage/watch.rs
100644 721223882d 1 docs/perf/web.md
100644 5e81e1ecfa 2 docs/perf/web.md
100644 c53bf6b5cf 3 docs/perf/web.md

Auto-merging Cargo.lock
CONFLICT (content): Merge conflict in Cargo.lock
Auto-merging crates/fsio/Cargo.toml
CONFLICT (content): Merge conflict in crates/fsio/Cargo.toml
Auto-merging crates/fsio/src/beneath.rs
CONFLICT (content): Merge conflict in crates/fsio/src/beneath.rs
Auto-merging crates/fsio/src/usage.rs
CONFLICT (content): Merge conflict in crates/fsio/src/usage.rs
Auto-merging crates/fsio/src/usage/watch.rs
CONFLICT (add/add): Merge conflict in crates/fsio/src/usage/watch.rs
Auto-merging docs/perf/web.md
CONFLICT (content): Merge conflict in docs/perf/web.md

# Overlap with PR #754 #755 6d801fc3; #754 967dd3e8929543813ca61545ca9b81685758ab40 All files changed by both chains against dev: - Cargo.lock - crates/fsio/Cargo.toml - crates/fsio/src/beneath.rs - crates/fsio/src/usage.rs - crates/fsio/src/usage/watch.rs Functions changed in both chains (including methods moved into watch.rs): - crates/fsio/src/beneath.rs: names #755 changed: entry_info, for_each_name, names #754 changed: child_name, child_stat, location, names, open, open_child, open_root, open_sub, verify_location - crates/fsio/src/usage.rs: background, moved, person, recount_using, refresh_using, walk, with_state #755 changed: background, directory_move_during_recount_retries_with_relative_paths, moved, person, person_key, recording, recount_uses_relative_keys_and_ignores_symlinks, recount_using, refresh_using, walk, with_state #754 changed: a_separate_state_root_counts_what_plugins_report, accounted_path, background, bulk_writes_and_published_folders_count_without_a_recount, drop, moved, person, reads_do_not_wait_for_the_counter_writer, recount, recount_preserves_concurrent_writes_and_deletes, recount_using, refresh, refresh_using, repair, repair_snapshot, stale_metadata_cannot_replace_a_newer_update, storage_failure, walk, with_state, writes_moves_trash_and_purge_update_without_a_recount, wrote - crates/fsio/src/usage/watch.rs: apply, start #755 changed: apply, background, deleted_paths_do_not_accumulate_without_periodic_recounts, outside_writes_and_directory_renames_repair_usage, poll, start, watch, watcher_registration_never_blocks_startup_or_initial_accounting #754 changed: a_file_removed_before_native_watch_install_is_transient, apply, fallback_recounts_when_due_even_with_queued_events, gather_until, gathering_stops_at_its_deadline_even_with_queued_events, native, run, start, sync_inodes, wait_for_work Usage::background is changed in both chains but #755 moves it into watch.rs; start is a file-local function in #755 and module entry point in #754. The shared names do not imply equivalent interfaces. watch/apply and recount_using have incompatible event/state models. How to combine: - Use #754's descriptor-relative containment, exact OsString child names, inode alias index, bounded event batches, retained measurement failures and inode-watch lifetime management as the quota implementation. Do not restore #755's lossy string names, path-based directory opens or unbounded event draining while resolving conflicts. - Port #755's borrowed directory iteration to #754's descriptor walker using OsStr callbacks and child_stat/open_child/location verification. Snapshot allocation reuse must preserve #754's File/Identity values, inode aliases, generation journal, subtree validation and failure reporting. It cannot be applied as a replacement recount_using body. - Preserve asynchronous registration in #754's existing watch::start/run implementation, but fix the shared first-snapshot/second-admission gap. Neither worker's eventual recount alone satisfies the strict readiness contract. Admission needs a trustworthy synchronized view during registration (or readiness/admissions must wait for this guarantee). Replay and validate changes before trusting the initial snapshot; retain synchronous accounting for app writes. - Merge dependency requirements in crates/fsio/Cargo.toml, then regenerate Cargo.lock rather than selecting one side. #754 needs its inode/kernel support as well as notify. Keep startup_quota.rs and all independent regression suites; re-run both suites on the combined implementation. - docs/perf/web.md also conflicts because the merge base is a779a46f, even though it is not in the intersection of changes relative to d83e54db. Keep only measurements supported by the combined head. No evidence should be copied into the repo. merge-tree command: git merge-tree --write-tree 6d801fc3 origin/perf/idle-honest-2 Exit: 1 (conflicts); no worktree merge performed. 88720a7b6a234536fb96d33096549ce5ba57d9e2 100644 eeda9f662808aa524caf409022491432c3445233 1 Cargo.lock 100644 8c46981362e5054425e7a088f50a6b03eb9fed2e 2 Cargo.lock 100644 07b47a7c0602026179b0865f3ad55511940479c2 3 Cargo.lock 100644 0ef728454f86ae84dbf3538e5d2d6c2480ceeebe 1 crates/fsio/Cargo.toml 100644 1e16efb5b39249ef3b6cb6f9133c0c461241c750 2 crates/fsio/Cargo.toml 100644 f7c1d4b8bcc3fe2510053304a8060c2ca6edd585 3 crates/fsio/Cargo.toml 100644 281a81a8e077f969ad6c4f9bcbe71cab05a2856e 1 crates/fsio/src/beneath.rs 100644 6a9c8779295546ffe6436bdccf3825d0fd055299 2 crates/fsio/src/beneath.rs 100644 c8e494f59f6f5282c79a007ec2bb2f6c51a15c94 3 crates/fsio/src/beneath.rs 100644 8e9c05c56c812e05e042a202d0dbcbe1b5c98645 1 crates/fsio/src/usage.rs 100644 438c0a7eb44d34056f9e23d9e898a4c80463e67d 2 crates/fsio/src/usage.rs 100644 9c15cd2569469453b80cd36550ba02ec4b88595e 3 crates/fsio/src/usage.rs 100644 3d959e835c8701ebbcd9b5ca409f6629146bbabe 2 crates/fsio/src/usage/watch.rs 100644 06b136ae7e964e00dfdd2379662061cc932fb9d0 3 crates/fsio/src/usage/watch.rs 100644 721223882d8179f2dee907d15941133ed64fb446 1 docs/perf/web.md 100644 5e81e1ecfa525921f50ce5ae58fad163b0364dfe 2 docs/perf/web.md 100644 c53bf6b5cfcdd613221bc4975cf384922677fe66 3 docs/perf/web.md Auto-merging Cargo.lock CONFLICT (content): Merge conflict in Cargo.lock Auto-merging crates/fsio/Cargo.toml CONFLICT (content): Merge conflict in crates/fsio/Cargo.toml Auto-merging crates/fsio/src/beneath.rs CONFLICT (content): Merge conflict in crates/fsio/src/beneath.rs Auto-merging crates/fsio/src/usage.rs CONFLICT (content): Merge conflict in crates/fsio/src/usage.rs Auto-merging crates/fsio/src/usage/watch.rs CONFLICT (add/add): Merge conflict in crates/fsio/src/usage/watch.rs Auto-merging docs/perf/web.md CONFLICT (content): Merge conflict in docs/perf/web.md
Author
Owner

P1 follow-up: the independent test now exercises the real Auth::admit path, with a fresh Usage counter in the same state as a worker stalled before registration. An initial admission snapshots an empty Home; an outside program writes ten bytes under quota 10; the next one-byte admission succeeds. The workspace run fails quota::independent_review_755::second_upload_during_registration_must_count_outside_growth with: "accepted an upload although outside bytes exhausted quota". This confirms the admission failure directly, beyond the counter-level reproducer. No product code was changed.

P1 follow-up: the independent test now exercises the real Auth::admit path, with a fresh Usage counter in the same state as a worker stalled before registration. An initial admission snapshots an empty Home; an outside program writes ten bytes under quota 10; the next one-byte admission succeeds. The workspace run fails quota::independent_review_755::second_upload_during_registration_must_count_outside_growth with: "accepted an upload although outside bytes exhausted quota". This confirms the admission failure directly, beyond the counter-level reproducer. No product code was changed.
Author
Owner

P2: the new quota recount silently omits valid native filesystem entries. Reproducer: on Unix create users/person/Documents/invalid- with 7 bytes and a filename containing a backslash with 9 bytes, then Usage::ensure(). Independent test independent_review_755_recount_preserves_native_outside_filenames reports 0 bytes, expected 16. Folder::for_each_name converts invalid UTF-8 with to_string_lossy before entry_info stats that new name; the original file is missed. entry_info also calls single/plain_parts, rejecting the valid native backslash name. recount ignores both errors, publishes ready=true and charges neither file. This is persistent even after registration/recount, unlike the P1 window. Dev used native read_dir paths and counted these files. Reproduce: source /etc/calternal/env.sh; /usr/local/bin/build-slot.sh cargo test -j3 -p calternal-fsio independent_review_755_recount_preserves_native_outside_filenames -- --nocapture. Combine the optimization with #754 using exact OsStr child names and descriptor-relative stats, preserving its failure handling.

P2: the new quota recount silently omits valid native filesystem entries. Reproducer: on Unix create users/person/Documents/invalid-<byte ff> with 7 bytes and a filename containing a backslash with 9 bytes, then Usage::ensure(). Independent test independent_review_755_recount_preserves_native_outside_filenames reports 0 bytes, expected 16. Folder::for_each_name converts invalid UTF-8 with to_string_lossy before entry_info stats that new name; the original file is missed. entry_info also calls single/plain_parts, rejecting the valid native backslash name. recount ignores both errors, publishes ready=true and charges neither file. This is persistent even after registration/recount, unlike the P1 window. Dev used native read_dir paths and counted these files. Reproduce: source /etc/calternal/env.sh; /usr/local/bin/build-slot.sh cargo test -j3 -p calternal-fsio independent_review_755_recount_preserves_native_outside_filenames -- --nocapture. Combine the optimization with #754 using exact OsStr child names and descriptor-relative stats, preserving its failure handling.
Author
Owner

Gate output verbatim. Command: cargo fmt --all -- --check. Exit: 0. Final tests branch head: edba00ec64.
Part 1/1.


Gate output verbatim. Command: `cargo fmt --all -- --check`. Exit: 0. Final tests branch head: edba00ec64f3afe5780caade7637cb4ffed5cffa. Part 1/1. ```text ```
Author
Owner

Gate output verbatim. Command: cargo clippy -j3 --workspace --all-targets -- -D warnings. Exit: 0. Final tests branch head: edba00ec64.
Part 1/1.

    Checking calternal-auth v0.1.0 (/home/agent/wt/review-755/crates/auth)
    Checking calternal-tasks v0.1.0 (/home/agent/wt/review-755/crates/tasks)
    Checking calternal-contacts-actions v0.1.0 (/home/agent/wt/review-755/crates/contacts-actions)
    Checking calternal-daily v0.1.0 (/home/agent/wt/review-755/crates/daily)
    Checking calternal-perf v0.1.0 (/home/agent/wt/review-755/crates/perf)
    Checking calternal v0.1.0 (/home/agent/wt/review-755/crates/calternal)
    Checking calternal-server v0.1.0 (/home/agent/wt/review-755/crates/server)
    Checking calternal-notes v0.1.0 (/home/agent/wt/review-755/crates/notes)
    Checking calternal-migrate-v0 v0.1.0 (/home/agent/wt/review-755/crates/migrate-v0)
    Checking calternal-backdrops v0.1.0 (/home/agent/wt/review-755/crates/backdrops)
    Checking calternal-attachments v0.1.0 (/home/agent/wt/review-755/crates/attachments)
    Checking calternal-prefs v0.1.0 (/home/agent/wt/review-755/crates/prefs)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.23s

Gate output verbatim. Command: `cargo clippy -j3 --workspace --all-targets -- -D warnings`. Exit: 0. Final tests branch head: edba00ec64f3afe5780caade7637cb4ffed5cffa. Part 1/1. ```text Checking calternal-auth v0.1.0 (/home/agent/wt/review-755/crates/auth) Checking calternal-tasks v0.1.0 (/home/agent/wt/review-755/crates/tasks) Checking calternal-contacts-actions v0.1.0 (/home/agent/wt/review-755/crates/contacts-actions) Checking calternal-daily v0.1.0 (/home/agent/wt/review-755/crates/daily) Checking calternal-perf v0.1.0 (/home/agent/wt/review-755/crates/perf) Checking calternal v0.1.0 (/home/agent/wt/review-755/crates/calternal) Checking calternal-server v0.1.0 (/home/agent/wt/review-755/crates/server) Checking calternal-notes v0.1.0 (/home/agent/wt/review-755/crates/notes) Checking calternal-migrate-v0 v0.1.0 (/home/agent/wt/review-755/crates/migrate-v0) Checking calternal-backdrops v0.1.0 (/home/agent/wt/review-755/crates/backdrops) Checking calternal-attachments v0.1.0 (/home/agent/wt/review-755/crates/attachments) Checking calternal-prefs v0.1.0 (/home/agent/wt/review-755/crates/prefs) Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.23s ```
Author
Owner

Gate output verbatim. Command: cargo test -j3 --workspace --no-fail-fast. Exit: 101. Final tests branch head: edba00ec64.
The full run was at 108a711b; the only later change is one test-only lint allowance for an intentional outside-program write. No test behavior changed.
Part 1/3.

   Compiling serde_core v1.0.229
   Compiling log v0.4.34
   Compiling bytes v1.12.1
   Compiling mio v1.2.4
   Compiling tracing-core v0.1.36
   Compiling tracing v0.1.44
   Compiling errno v0.3.14
   Compiling signal-hook-registry v1.4.8
   Compiling parking_lot v0.12.5
   Compiling socket2 v0.6.5
   Compiling thiserror v2.0.21
   Compiling tokio v1.53.2
   Compiling ref-cast v1.0.27
   Compiling rusqlite v0.40.2
   Compiling notify v9.0.0-rc.5
   Compiling calternal-fsio v0.1.0 (/home/agent/wt/review-755/crates/fsio)
   Compiling rand v0.10.3
   Compiling num-traits v0.2.19
   Compiling futures-core v0.3.34
   Compiling http v1.5.0
   Compiling serde v1.0.229
   Compiling serde_json v1.0.154
   Compiling uuid v1.28.0
   Compiling calternal-testkit v0.1.0 (/home/agent/wt/review-755/crates/testkit)
   Compiling futures-sink v0.3.34
   Compiling percent-encoding v2.3.2
   Compiling httparse v1.10.1
   Compiling futures-channel v0.3.34
   Compiling slab v0.4.12
   Compiling data-encoding v2.11.1
   Compiling futures-task v0.3.34
   Compiling futures-io v0.3.34
   Compiling zerocopy v0.8.62
   Compiling futures-util v0.3.34
   Compiling getrandom v0.3.4
   Compiling rand_core v0.9.5
   Compiling ppv-lite86 v0.2.21
   Compiling schemars v1.2.3
   Compiling generic-array v0.14.7
   Compiling rand_chacha v0.9.0
   Compiling form_urlencoded v1.2.2
   Compiling rand v0.9.5
   Compiling http-body v1.1.0
   Compiling simd-adler32 v0.3.10
   Compiling adler2 v2.0.1
   Compiling alloc-no-stdlib v3.0.0
   Compiling miniz_oxide v0.9.1
   Compiling alloc-stdlib v0.3.0
   Compiling crc32fast v1.5.2
   Compiling block-buffer v0.10.4
   Compiling crypto-common v0.1.7
   Compiling lazy_static v1.5.1
   Compiling tower-service v0.3.3
   Compiling digest v0.10.7
   Compiling flate2 v1.1.10
   Compiling zerofrom v0.1.8
   Compiling brotli-decompressor v6.0.1
   Compiling tower-layer v0.3.3
   Compiling cpufeatures v0.2.17
   Compiling mime v0.3.17
   Compiling httpdate v1.0.3
   Compiling stable_deref_trait v1.2.1
   Compiling brotli v9.0.0
   Compiling yoke v0.8.3
   Compiling sha1 v0.10.7
   Compiling http-body-util v0.1.5
   Compiling tokio-util v0.7.20
   Compiling mime_guess v2.0.5
   Compiling atomic-waker v1.1.2
   Compiling sync_wrapper v1.0.2
   Compiling compression-core v0.4.33
   Compiling hyper v1.12.0
   Compiling compression-codecs v0.4.45
   Compiling tungstenite v0.29.0
   Compiling zerovec v0.11.8
   Compiling hyper-util v0.1.21
   Compiling calternal-core v0.1.0 (/home/agent/wt/review-755/crates/core)
   Compiling async-compression v0.4.50
   Compiling calternal-store v0.1.0 (/home/agent/wt/review-755/crates/store)
   Compiling axum-core v0.5.6
   Compiling tower v0.5.3
   Compiling calternal-engine v0.1.0 (/home/agent/wt/review-755/crates/engine)
   Compiling tokio-tungstenite v0.29.0
   Compiling serde_urlencoded v0.7.1
   Compiling serde_path_to_error v0.1.20
   Compiling http-range-header v0.4.2
   Compiling matchit v0.8.4
   Compiling tower-http v0.6.11
   Compiling tinystr v0.8.4
   Compiling writeable v0.6.4
   Compiling litemap v0.8.3
   Compiling icu_locale_core v2.3.0
   Compiling axum v0.8.9
   Compiling potential_utf v0.1.6
   Compiling zerotrie v0.2.5
   Compiling utf8_iter v1.0.4
   Compiling icu_collections v2.3.0
   Compiling icu_provider v2.3.1
   Compiling sha1 v0.11.0
   Compiling minimal-lexical v0.2.1
   Compiling nom v7.1.3
   Compiling tungstenite v0.30.0
   Compiling icu_properties_data v2.3.0
   Compiling icu_normalizer_data v2.3.0
   Compiling thiserror v1.0.69
   Compiling icu_normalizer v2.3.0
   Compiling icu_properties v2.3.0
   Compiling rusticata-macros v4.1.0
   Compiling zeroize v1.9.1
   Compiling serde_yaml v0.9.34+deprecated
   Compiling tokio-tungstenite v0.30.0
   Compiling rustls-pki-types v1.15.1
   Compiling asn1-rs v0.6.2
   Compiling yrs v0.28.0
   Compiling idna_adapter v1.2.2
   Compiling calternal-plugin-hello v0.1.0 (/home/agent/wt/review-755/crates/plugin-hello)
   Compiling num-integer v0.1.47
   Compiling getrandom v0.2.17
   Compiling foreign-types-shared v0.1.1
   Compiling base64 v0.21.7
   Compiling untrusted v0.9.0
   Compiling ring v0.17.14
   Compiling base64urlsafedata v0.5.5
   Compiling foreign-types v0.3.2
   Compiling num-bigint v0.4.8
   Compiling idna v1.1.0
   Compiling openssl-sys v0.9.117
   Compiling calternal-server v0.1.0 (/home/agent/wt/review-755/crates/server)
   Compiling imagesize v0.14.0
   Compiling base64 v0.23.1
   Compiling openssl v0.10.81
   Compiling url v2.5.8
   Compiling der-parser v9.0.0
   Compiling oid-registry v0.7.1
   Compiling rustls-webpki v0.103.15
   Compiling half v2.7.1
   Compiling web-time v1.1.0
   Compiling subtle v2.6.1
   Compiling rustls v0.23.46
   Compiling x509-parser v0.16.0
   Compiling calternal-notes v0.1.0 (/home/agent/wt/review-755/crates/notes)
   Compiling cfb v0.14.0
   Compiling serde_cbor_2 v0.13.0
   Compiling webauthn-rs-proto v0.5.5
   Compiling webauthn-attestation-ca v0.5.5
   Compiling ureq-proto v0.6.4
   Compiling webpki-roots v1.0.9
   Compiling utf8-zero v0.8.1
   Compiling hex v0.4.3
   Compiling ureq v3.4.2
   Compiling webauthn-rs-core v0.5.5
   Compiling infer v0.22.0
   Compiling proptest v1.12.0
   Compiling unicode-script v0.5.8
   Compiling unicode-security v0.1.2
   Compiling unicode-general-category v0.6.0
   Compiling calternal-attachments v0.1.0 (/home/agent/wt/review-755/crates/attachments)
   Compiling calternal-backdrops v0.1.0 (/home/agent/wt/review-755/crates/backdrops)
   Compiling webauthn-rs v0.5.5
   Compiling calternal-contacts v0.1.0 (/home/agent/wt/review-755/crates/contacts)
   Compiling unicode-casefold v0.2.0
   Compiling calternal-auth v0.1.0 (/home/agent/wt/review-755/crates/auth)
   Compiling regex-automata v0.4.18
   Compiling matchers v0.2.0
   Compiling sharded-slab v0.1.7
   Compiling tracing-log v0.2.0
   Compiling thread_local v1.1.10
   Compiling nu-ansi-term v0.50.3
   Compiling tracing-subscriber v0.3.23
   Compiling futures-executor v0.3.34
   Compiling async-stream v0.3.6
   Compiling futures v0.3.34
   Compiling tokio-stream v0.1.19
   Compiling serde_bytes v0.11.19
   Compiling bitflags v1.3.2
   Compiling webauthn-authenticator-rs v0.5.5
   Compiling calternal-search v0.1.0 (/home/agent/wt/review-755/crates/search)
   Compiling calternal-tasks v0.1.0 (/home/agent/wt/review-755/crates/tasks)
   Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/review-755/crates/contacts-actions)
   Compiling calternal-daily v0.1.0 (/home/agent/wt/review-755/crates/daily)
   Compiling calternal-prefs v0.1.0 (/home/agent/wt/review-755/crates/prefs)
   Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/review-755/crates/migrate-v0)
   Compiling calternal-fixtures v0.1.0 (/home/agent/wt/review-755/crates/fixtures)
   Compiling calternal-perf v0.1.0 (/home/agent/wt/review-755/crates/perf)
   Compiling calternal v0.1.0 (/home/agent/wt/review-755/crates/calternal)
   Compiling calternal-memory v0.1.0 (/home/agent/wt/review-755/crates/memory)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 10s
     Running unittests src/main.rs (target/debug/deps/calternal-99ec66c89b429b22)

running 32 tests
test admin::tests::a_stop_sent_before_subscribing_is_still_seen ... ok
test admin::tests::an_active_request_gets_a_graceful_shutdown_window ... ok
test args::tests::defaults_and_flags ... ok
test args::tests::dev_user_never_on_a_public_address ... ok
test args::tests::fix_commands ... ok
test args::tests::migrate_v0 ... ok
test args::tests::origin_defaults_to_the_local_port ... ok
test args::tests::setup_and_re_pair_are_explicit ... ok
test admin::tests::shutdown_stops_a_client_waiting_on_a_partial_request ... ok
test args::tests::state_defaults_to_resolved_data_and_flags_override_environment ... ok
test args::tests::user_create ... ok
test args::tests::user_recover ... ok
test args::tests::web_folder ... ok
test admin::tests::a_restart_waits_out_an_admin_request_longer_than_ten_seconds ... ok
test isolation::bob_cannot_reach_alices_attachments ... ok
test isolation::in_process_server_shutdown_releases_both_roots_200x_under_load ... ignored, stress gate; run explicitly during release validation
test isolation::people::backdrops_spend_the_same_counter_as_small_attachments ... ok
test isolation::contacts_and_tasks_in_one_home_keep_their_own_members ... ok
test isolation::people::duplicate_upload_at_quota_must_not_spend_bytes_twice ... ok
test isolation::people::normal_token_failures_do_not_log_or_persist_plaintext ... ok
test isolation::people::real_upload_storm_notes_trash_restore_and_delete_usage ... ok
test isolation::bob_cannot_join_alices_note_room ... ok
test isolation::quota_refuses_large_and_small_uploads_while_notes_still_save ... ok
test isolation::people_actions_hide_real_ids_from_members_other_users_and_anonymous_callers ... ok
test isolation::bob_reaches_nothing_of_alices_through_any_action ... ok
test isolation::split_storage_keeps_originals_and_databases_on_their_disks ... ok
test plugins::tests::contract_matches_the_server ... ok
test shutdown_io::tests::shutdown_bounds_response_writes_to_a_peer_that_stops_reading ... ok
test shutdown_io::tests::shutdown_finishes_an_idle_read_and_keeps_response_writes_open ... ok
test isolation::renaming_a_task_retargets_task_and_contact_links_once ... ok
test isolation::people::every_action_obeys_person_visibility ... ok
test isolation::randomized_home_shutdown_releases_both_roots ... ok

test result: ok. 31 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.33s

     Running tests/attachments_crash.rs (target/debug/deps/attachments_crash-7fe342b417399798)

running 2 tests
test kill_nine_mid_upload_leaves_nothing_half_written ... ok
test a_big_upload_streams_in_bounded_memory ... ok

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

     Running tests/contacts_live.rs (target/debug/deps/contacts_live-eda4c5c7a44cf8d6)

running 2 tests
test a_phone_renames_a_contact_while_someone_types_in_a_linking_note ... ok
test a_live_h1_collision_keeps_contact_and_incoming_link_identity ... ok

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

     Running tests/fix_tz_live.rs (target/debug/deps/fix_tz_live-9965f2da35af43e9)

running 2 tests
test fix_without_a_running_server_says_so ... ok
test strip_tz_markers_on_a_live_home_with_a_client_typing ... ok

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

     Running tests/notes_crash.rs (target/debug/deps/notes_crash-f79d4295ad35e653)

running 3 tests
test kill_nine_mid_append_on_a_long_note ... ok
test kill_nine_mid_tag_rename_renames_each_tag_once ... ok
test kill_nine_never_loses_or_doubles ... ok

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

     Running tests/notes_crash_typing.rs (target/debug/deps/notes_crash_typing-1b7cac4786b12284)

running 1 test
test kill_nine_while_people_type_loses_and_doubles_nothing ... ok

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

     Running tests/notes_live.rs (target/debug/deps/notes_live-13334bf94ab0d25f)

running 2 tests
test joining_a_missing_note_fails_politely ... ok
test type_over_the_websocket_and_read_it_back ... ok

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

     Running tests/prefs_live.rs (target/debug/deps/prefs_live-06841d9f5105653b)

running 1 test
test preferences_are_saved_checked_and_kept ... ok

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

     Running tests/search_live.rs (target/debug/deps/search_live-68b3118344175121)

running 2 tests
test perf_live_empty_search_under_one_second ... ignored, live empty-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test notes_from_everywhere_are_found ... ok

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

     Running tests/startup.rs (target/debug/deps/startup-c012f5172b16129f)

running 6 tests
test perf_startup_under_500ms ... ignored, startup latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test refuses_dev_user_on_a_public_address ... ok
test refuses_plain_http_on_a_public_origin ... ok
test recover_only_knows_real_people ... ok
test answers_after_launch ... ok
test a_new_server_prints_a_setup_token ... ok

test result: ok. 5 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.03s

     Running tests/startup_quota.rs (target/debug/deps/startup_quota-de0a50c9547d2937)

running 1 test
test first_upload_after_healthz_enforces_existing_home_usage ... ok

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

     Running tests/storage_startup.rs (target/debug/deps/storage_startup-69b0d7f263386f2d)

running 11 tests
test a_lock_held_past_the_longest_grace_still_fails_startup ... ok
test create_refuses_unpaired_notes_or_databases_before_creating_other_root ... ok
test legacy_history_read_only_and_invalid_state_are_refused ... ok
test both_missing_markers_with_existing_split_data_require_confirmed_re_pair ... ok
test original_storage_startup_scenario_repeats_100x_under_load ... ignored, stress gate; run explicitly during release validation
test missing_home_refuses_without_creating_directory_or_lock ... ok
test missing_state_never_recreates_databases_even_with_create ... ok
test single_root_upgrade_backup_split_cache_delete_and_rollback ... ok
test startup_waits_for_a_previous_server_to_release_both_roots ... ok
test roots_must_keep_their_persistent_partner_and_admin_must_confirm ... ok
test both_roots_remain_exclusively_locked ... ok

test result: ok. 10 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 10.11s

     Running unittests src/lib.rs (target/debug/deps/calternal_attachments-93f795bb7f298b97)

running 19 tests
test serve::tests::dispositions_quote_safely ... ok
test serve::tests::only_plain_visible_paths_are_served ... ok
test serve::tests::ranges ... ok
test tests::http::a_connection_that_breaks_off_leaves_nothing ... ok
test tests::http::an_upload_lands_in_its_dated_folder_and_is_served_back ... ok
test tests::http::a_retry_with_the_same_key_never_makes_a_second_copy ... ok
test tests::http::check_finds_only_your_own_files ... ok
test tests::http::paths_that_climb_out_of_the_home_are_not_found ... ok
test tests::http::the_sweep_removes_what_a_crash_left_and_spares_live_uploads ... ok
test tests::http::the_limit_holds_while_streaming_without_a_length ... ok
test tests::http::uploads_need_a_session_our_page_and_a_key ... ok
test tests::sniffing::days_are_strict ... ok
test tests::sniffing::names_are_kept_but_made_safe ... ok
test tests::http::names_can_not_steer_where_a_file_goes ... ok
test tests::sniffing::pictures_and_videos_go_to_photos ... ok
test tests::sniffing::text_types_come_from_the_extension_and_html_never_runs ... ok
test tests::sniffing::the_name_never_decides_a_binary_type ... ok
test tests::http::the_same_file_again_says_already_uploaded_and_keeps_one_copy ... ok
test tests::http::unsafe_types_are_downloads_with_a_strict_policy ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_auth-255e151c8552a0db)

running 30 tests
test config::tests::origins ... ok
test ceremony::tests::anonymous_pool_stays_bounded_and_evicts_oldest ... ok
test db::tests::a_version_1_database_gets_passkey_names ... ok
test ceremony::tests::full_pool_refuses_foreign_source_without_discarding_live_prompt ... ok
test db::tests::existing_database_keeps_people_credentials_and_sessions ... ok
test http::cookie_tests::session_cookie_is_host_only_and_secure ... ok
test invite_key::tests::lookup_uses_a_separate_derived_key_and_depends_on_the_server_key ... ok
test invite_redeem::tests::expiry_and_clock_rollback_use_the_same_validation_path ... ok
test invite_redeem::tests::invalid_invite_classes_perform_one_lookup_and_one_secret_comparison ... ok
test invite_redeem::tests::invalid_invites_do_not_reveal_name_conflicts ... ok
test limit::reliability_tests::backoff_expires_is_capped_and_refusals_do_not_extend_it ... ok
test limit::reliability_tests::buckets_are_independent_and_bounded ... ok
test limit::reliability_tests::full_map_evicts_least_recent_without_refusing_new_sources ... ok
test db::tests::opens_twice_and_keeps_schema ... ok
test limit::reliability_tests::target_capacity_preserves_live_budgets_and_evicts_only_oldest_expired ... ok
test passkeys::tests::ids_round_trip ... ok
test passkeys::tests::names_are_trimmed_short_and_never_empty ... ok
test http::proxy_tests::forwarding_stops_at_first_untrusted_hop_and_rejects_malformed_chains ... ok
test session::tests::names_are_cleaned ... ok
test invite_key::tests::key_round_trips_but_modified_ciphertext_and_another_id_fail ... ok
test setup::tests::names ... ok
test setup::tests::names_reject_invisible_and_normalize_nfc ... ok
test setup::tests::recover_needs_a_known_person ... ok
test quota::independent_review_755::second_upload_during_registration_must_count_outside_growth ... FAILED
test setup::tests::usernames ... ok
test token::tests::junk_is_not_a_token ... ok
test token::tests::setup_tokens_round_trip_through_pasting ... ok
test setup::tests::recovery_requires_exact_username_or_uuid_never_display_name ... ok
test setup::tests::cli_creation_refuses_admin_name_confusables ... ok
test limit::reliability_tests::source_churn_cannot_reset_target_budget ... ok

failures:

---- quota::independent_review_755::second_upload_during_registration_must_count_outside_growth stdout ----

thread 'quota::independent_review_755::second_upload_during_registration_must_count_outside_growth' (3111187) panicked at crates/auth/src/quota.rs:135:9:
accepted an upload although outside bytes exhausted quota
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace


failures:
    quota::independent_review_755::second_upload_during_registration_must_count_outside_growth

test result: FAILED. 29 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.65s

error: test failed, to rerun pass `-p calternal-auth --lib`
     Running tests/abuse.rs (target/debug/deps/abuse-0554e7d0c90fe37c)

running 12 tests
test bad_json_and_unknown_fields_are_refused ... ok
test forged_sessions_get_nowhere ... ok
test anonymous_prompt_flood_preserves_login_setup_and_add ... ok
test duplicate_session_cookies_never_choose_an_identity ... ok
test junk_setup_tokens_are_refused_then_rate_limited ... ok
test non_json_requests_are_refused ... ok
test login_source_limit_does_not_block_another_client ... ok
test nothing_about_the_server_leaks_before_sign_in ... ok
test one_source_cannot_lock_out_another_and_cannot_spoof_forwarding ... ok
test other_sites_cannot_act_for_you ... ok
test oversized_bodies_are_refused ... ok
test garbage_credentials_never_crash ... ok

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

     Running tests/create.rs (target/debug/deps/create-faf1e08e43feb7a0)

running 6 tests
test an_expired_enrolment_token_is_refused ... ok
test an_earlier_first_owner_token_stops_working ... ok
test a_created_person_enrolls_their_first_passkey_and_is_the_same_person ... ok
test nothing_about_the_person_leaks_before_sign_in ... ok
test names_must_be_usable_and_unique ... ok
test an_enrolment_token_works_exactly_once_under_a_storm ... ok

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

     Running tests/groups.rs (target/debug/deps/groups-dc189b287733fdc8)

running 1 test
test shared_groups_control_visibility_and_managers_only_edit_local_members ... ok

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

     Running tests/host_cookies.rs (target/debug/deps/host_cookies-beeadd0af6097bba)

running 3 tests
test old_name_is_ignored_and_cleared_once_without_touching_host_session ... ok
test duplicate_host_headers_and_stale_requests_never_clear_new_session ... ok
test upgrading_schema_six_removes_cookie_state_and_keeps_passkeys ... ok

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

     Running tests/invites.rs (target/debug/deps/invites-19edd38116a65a09)

running 8 tests
test invite_finish_rechecks_admin_names_after_role_changes ... ok
test invite_admin_names_cannot_be_impersonated_and_failure_preserves_invite ... ok
test invite_can_be_copied_after_restart_and_only_one_racing_passkey_wins ... ok
test invite_redemption_joins_its_groups_and_other_inviters_cannot_copy_it ... ok
test losing_the_key_does_not_replace_it_and_invite_secrets_never_enter_action_history ... ok
test legacy_invite_indexes_upgrade_atomically_and_keep_copy_and_redemption ... ok
test wrong_expired_used_and_revoked_invites_give_one_answer ... ok
test invite_redemption_reaches_a_visible_admin_but_not_an_unrelated_member ... ok

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

     Running tests/isolation.rs (target/debug/deps/isolation-e530a8e5c8c4e66c)

running 3 tests
test a_cookie_sent_from_another_sites_page_does_not_count ... ok
test another_persons_passkey_prompt_cannot_be_used_or_cancelled ... ok
test devices_and_passkeys_of_another_person_are_not_found ... ok

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

     Running tests/login.rs (target/debug/deps/login-fa49803f77e2d84b)

running 11 tests
test bearer_tokens_work_like_cookies ... ok
test foreign_status_cannot_sign_the_browser_out ... ok
test a_sign_in_answer_cannot_be_replayed ... ok
test an_unknown_passkey_is_refused ... ok
test revoking_another_device_signs_it_out ... ok
test logout_revokes_the_installation_and_rejects_live_cookies ... ok
test sign_out_ends_the_session_immediately ... ok
test sign_in_with_a_passkey_creates_a_new_installation ... ok
test signing_in_shows_up_live_on_another_device ... ok
test signing_out_shows_up_live_on_another_device ... ok
test sessions_expire_when_unused ... ok

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

     Running tests/migration.rs (target/debug/deps/migration-173ed6d888a076df)

running 1 test
test schema_two_copy_keeps_real_credentials_sessions_and_recovery ... ok

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

     Running tests/passkeys.rs (target/debug/deps/passkeys-101589e5a9ccd67d)

running 7 tests
test an_empty_name_is_refused_and_a_long_one_is_cut ... ok
test adding_needs_a_sign_in_and_an_add_prompt_works_once ... ok
test a_removed_passkey_that_is_gone_or_unknown_is_not_found ... ok
test add_rename_and_remove_each_leave_a_journal_event ... ok
test the_first_passkey_is_listed_with_the_device_it_was_made_on ... ok
test the_same_device_cannot_be_added_twice ... ok
test the_last_passkey_cannot_be_removed ... ok

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

     Running tests/people.rs (target/debug/deps/people-b1a51f7c6c0ce717)

running 4 tests
test first_owner_has_capabilities_and_cannot_demote_the_last_admin ... ok
test promotion_cannot_create_confusable_admin_names ... ok
test two_admins_racing_to_demote_themselves_leave_one_admin ... ok
test member_cannot_change_roles_and_new_capability_sets_work ... ok

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

     Running tests/quota_counter.rs (target/debug/deps/quota_counter-30009d6a020114a5)

running 3 tests
test perf_signin_during_large_recount_under_fifty_ms ... ignored, sign-in latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test small_uploads_spend_the_same_allowance_as_large_uploads ... ok
test signin_finishes_before_a_large_recount ... ok

test result: ok. 2 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.85s

     Running tests/reliability_review.rs (target/debug/deps/reliability_review-3d350d56853b757e)

running 22 tests
test authentication_database_does_not_wait_for_general_blocking_workers ... ok
test anonymous_flood_must_not_evict_other_persons_prompt ... ok
test crash_child_exit ... ignored
test concurrent_quota_admissions_do_not_overspend ... ok
test counter_concurrent_mutations_drift_and_restart ... ok
test directory_moves_keep_child_accounting_and_deletes_correct ... ok
test default_twenty_mib_stream_boundary ... ok
test independent_login_latency_during_recount ... ignored, latency budget runs on the perf VM via perf/auth-latency-vm.sh
test ipv6_prefix_must_share_budget ... ok
test directory_move_during_initial_recount_must_track_later_deletes ... ok
test names_normalization_recovery_and_invisibles ... ok
test normalized_setup_token_must_share_target_budget ... ok
test perf_ipv6_source_rotation_under_fifty_five_seconds ... ignored, IPv6 source-churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test repeated_bad_signatures_for_one_account_must_share_budget ... ok
test restart_recovers_disk_update_missing_counter_notification ... ok
test slow_uploads_must_not_starve_authentication_blocking_pool ... ok
test source_isolation_and_untrusted_forwarding ... ok
test streamed_slow_exact_over_abort_and_quota_replacement ... ok
test trusted_proxy_uses_nearest_untrusted_hop ... ok
test ipv6_rotation_must_not_lock_out_new_source ... ok
test account_owner_can_sign_in_after_backoff_and_success_resets_failures ... ok
test independent_login_completes_before_recount ... ok

test result: ok. 19 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 1.79s

     Running tests/reliability_round3.rs (target/debug/deps/reliability_round3-738ca56715d10648)

running 12 tests
test canonical_recovery_token_variants_share_one_target_without_spending_other_tokens ... ok
test attachment_and_backdrop_routes_share_caps_and_cancel_cleanup ... ok
test ipv4_mapped_v6_and_native_v4_share_budget_but_adjacent_prefix_does_not ... ok
test fifty_slow_upload_attempts_preserve_full_signin_and_status ... ok
test over_ten_thousand_distinct_source_buckets_still_admit_new_clients ... ok
test perf_signin_and_status_during_slow_uploads_under_fifty_ms ... ignored, sign-in and status latency budgets run on the perf VM via perf/ordinary-latency-vm.sh
test perf_source_bucket_churn_under_fifty_five_seconds ... ignored, source-bucket churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test rename_collision_and_replacement_keep_correct_usage ... ok
test setup_target_budget_survives_more_than_ten_thousand_sources ... ok
test idle_deadline_cleans_files_and_reopens_each_person_capacity ... ok
test attachment_slow_bodies_must_not_hold_all_general_blocking_workers ... ok
test maximum_account_backoff_releases_owner_despite_refused_retries has been running for over 60 seconds
test maximum_account_backoff_releases_owner_despite_refused_retries ... ok

test result: ok. 10 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 123.87s

     Running tests/security_regressions.rs (target/debug/deps/security_regressions-b0a62a9a2f116cc4)

running 15 tests
test concurrent_key_creation_publishes_one_complete_key ... ok
test eight_parallel_redeemers_create_exactly_one_account ... ok
test expiry_during_passkey_registration_consumes_nothing ... ok
test every_action_rejects_anonymous_expired_and_unprivileged_writes ... ok
test groups_manager_must_obey_single_person_visibility_rule ... ok
test invite_lookup_must_use_keyed_hash ... ok
test new_modules_are_small_and_documented ... ok
test key_permissions_missing_corrupt_and_no_plaintext_history ... ok
test perf_invite_failure_timing_classes_within_ratio ... ignored, invite failure timing budget runs on the perf VM via perf/ordinary-latency-vm.sh
test malformed_token_must_have_same_generic_response ... ok
test revoked_expired_used_and_wrong_fail_equally ... ok
test origin_dev_schema_migrates_idempotently_and_rolls_back_partial_failure ... ok
test two_admins_demoting_each_other_keep_one_manager ... ok
test quota_serializes_large_placements_and_tracks_delete_trash ... ok
test all_five_invite_failures_have_the_same_body_and_status ... ok

test result: ok. 14 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.28s

     Running tests/setup.rs (target/debug/deps/setup-5764fb78c30874cb)

running 8 tests
test a_restart_replaces_the_first_owner_token ... ok
test a_finished_prompt_cannot_be_replayed ... ok
test first_owner_needs_a_name ... ok
test first_owner_signs_up_with_the_printed_token ... ok
test a_token_works_exactly_once_under_a_storm ... ok
test recovery_adds_a_new_passkey_for_the_same_person ... ok
test session_cookie_is_locked_down ... ok
test an_expired_setup_token_is_refused ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_backdrops-fbe7c54c8247e701)

running 25 tests
test tests::an_answer_that_is_not_a_picture_is_refused_and_not_kept ... ok
test tests::a_photo_unknown_to_us_is_looked_up ... ok
test tests::a_stricter_attachment_limit_also_bounds_backdrops ... ok
test tests::an_upload_is_private_to_the_person_who_made_it ... ok
test tests::changes_need_our_own_page_and_a_signed_in_person ... ok
test tests::bad_ids_never_reach_the_disk_or_the_network ... ok
test tests::an_upload_is_kept_once_and_served_back ... ok
test tests::pictures_are_proxied_cached_and_never_given_the_key ... ok
test tests::picking_is_reported_to_unsplash_once ... ok
test tests::nobody_can_read_or_list_someone_elses_uploads ... ok
test tests::pictures_from_other_hosts_are_refused ... ok
test tests::search_lists_photos_with_our_own_addresses_and_credit ... ok
test tests::storage_cache::split_cache_deletion_refetches_upstream_and_keeps_original_upload ... ok
test tests::the_real_client_sends_the_key_and_caps_the_size ... ok
test tests::the_real_client_speaks_https_to_unsplash ... ignored, needs the internet
test tests::the_same_search_is_answered_once ... ok
test tests::the_cache_drops_the_oldest_files_past_its_cap ... ok
test tests::unsplash_running_out_of_requests_is_a_plain_slow_down ... ok
test tests::uploads_are_checked_by_content_not_by_what_they_claim ... ok
test tests::without_a_key_photos_are_off_but_uploads_work ... ok
test uploads::reliability_tests::idle_upload_removes_temporary_file_and_releases_admission ... ok
test tests::too_many_pixels_are_refused_but_files_within_the_byte_limit_work ... ok
test tests::backdrop_quota_refuses_new_files_and_releases_space_on_delete ... ok
test tests::streaming_upload_stops_at_byte_limit_and_leaves_no_artifact ... ok
test uploads::reliability_tests::upload_admission_is_bounded_and_cancellation_restores_capacity ... ok

test result: ok. 24 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.10s

     Running unittests src/lib.rs (target/debug/deps/calternal_contacts-deee87ac187bc93b)

running 1 test
test note::related_links_tests::only_the_cards_related_group_names_related_people ... ok

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

     Running tests/apple.rs (target/debug/deps/apple-61fc3a1b2bd29e4b)

running 4 tests
test unchanged_duplicate_ungrouped_occurrences_merge ... ok
test apple_rewrite_keeps_canonical_extensions_and_takes_real_edits ... ok
test client_deletion_requires_sent_field_and_uid_is_immutable ... ok
test unsent_note_changes_survive_and_concurrent_edits_return_history ... ok

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

     Running tests/break_codec.rs (target/debug/deps/break_codec-15475a0d7ca6c0a4)

running 11 tests
test envelope_checks_and_original_copy_reject_ambiguous_or_edited_state ... ok
test escaped_separator_parity_keeps_component_and_list_boundaries ... ok
test canonical_note_comparison_checks_every_byte_and_falls_back_for_local_sections ... ok
test folded_and_unfolded_utf8_lines_keep_values_and_their_original_bytes ... ok
test bare_properties_and_ignored_parameter_properties_decode_the_same_values ... ok
test multiline_google_custom_labels_cannot_create_other_card_groups ... ok
test quoted_parameter_delimiters_and_value_colons_keep_their_meaning ... ok
test original_and_edited_note_snapshots_both_preserve_later_typed_edits ... ok
test typed_reordering_and_value_tag_changes_use_the_exported_wire_projection ... ok
test component_and_list_comparisons_preserve_empty_parts_and_noncanonical_escapes ... ok
test mixed_rendered_values_keep_all_other_bytes_during_a_client_edit ... ok

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

     Running tests/break_generated.rs (target/debug/deps/break_generated-9ea63687a5138cbc)

running 9 tests
test fixed_seed_generated_shapes_include_every_reaudit_case ... ok
test arbitrary_wire_and_note_inputs_preserve_bytes_or_explain_rejection ... ok
test independent_vendor_shaped_cards_keep_foldings_metadata_and_unknowns ... ok
test generated_notes_shapes_and_repeated_fact_edits_round_trip ... ok
test synthetic_vendor_corpus_is_bidirectionally_byte_identical ... ok
test five_megabyte_notes_survive_both_conversions ... ok
test generated_valid_cards_and_messy_notes_keep_every_field ... ok
test ten_thousand_new_custom_labels_get_unique_groups_and_round_trip ... ok
test megabyte_value_ten_thousand_visible_fields_and_ten_megabyte_photo ... ok

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

     Running tests/break_inventory.rs (target/debug/deps/break_inventory-3c1714eff10efaff)

running 1 test
test every_inventory_property_survives_a_neighbour_edit ... ok

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

     Running tests/break_labels.rs (target/debug/deps/break_labels-7948c8c9f796b6d3)

running 2 tests
test names_use_human_order_even_when_vendor_properties_are_reordered ... ok
test builtin_labels_show_the_words_on_the_phone_and_recover_original_codes ... ok

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

     Running tests/break_layout.rs (target/debug/deps/break_layout-2358837d887c8bbc)

running 27 tests
test a_phone_note_containing_h2_or_h1_round_trips ... ok
test ambiguous_simultaneous_colon_edit_returns_phone_group_and_history ... ok
test colon_label_renames_survive_a_following_client_edit ... ok
test colon_bearing_label_edits_change_only_the_label_and_value_edits_only_the_value ... ok
test company_and_department_edits_share_one_org_in_either_note_order ... ok
test duplicate_structured_name_parts_are_unrepresentable ... ok
test crlf_notes_preserve_original_escape_spelling_and_do_not_create_merge_conflicts ... ok
test colons_delimiters_and_unicode_keep_their_exact_wire_values ... ok
test first_list_ends_at_a_paragraph_and_second_list_stays_local ... ok
test entering_a_birthday_year_clears_the_apple_omit_year_flag ... ok
test later_notes_headings_are_phone_text ... ok
test flat_repeatable_lines_stay_and_are_reported ... ok
test empty_visible_properties_are_not_deleted_on_an_unchanged_round_trip ... ok
test missing_h1_explains_rejection_and_empty_card_is_allowed ... ok
test multiline_labels_never_turn_into_unreported_fields ... ok
test missing_wire_display_name_is_not_silently_created_by_a_round_trip ... ok
test multiple_unrepresentable_document_fields_explain_rejection ... ok
test note_headings_and_crlf_do_not_change_plain_text ... ok
test multiple_edits_to_indistinguishable_occurrences_do_not_guess_hidden_parameters ... ok
test notes_heading_after_a_local_h1_owns_the_tail ... ok
test tags_keep_list_boundaries_when_a_category_contains_comma_space ... ok
test org_hierarchy_is_one_fact_and_unchanged_components_stay_lossless ... ok
test unchanged_values_that_differ_only_by_trailing_spaces_keep_both_occurrences ... ok
test utf8_bom_is_document_framing ... ok
test unicode_names_keep_normalisation_scripts_direction_and_joiners ... ok
test one_property_edit_changes_only_its_original_logical_line ... ok
test markdown_whitespace_and_bullets_do_not_edit_the_phone ... ok

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

     Running tests/break_links.rs (target/debug/deps/break_links-ce3f10ae119f8486)

running 4 tests
test a_colon_in_a_related_name_is_text_and_an_explicit_uri_stays_a_uri ... ok
test a_plain_name_that_looks_like_a_link_stays_that_name ... ok
test escaped_closing_brackets_inside_a_name_are_not_link_delimiters ... ok
test related_brackets_and_angle_brackets_are_valid_markdown_and_editable ... ok

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

     Running tests/break_merge.rs (target/debug/deps/break_merge-dae2ac22ab29d554)

running 16 tests
test crlf_new_group_is_written_once_for_multiple_incoming_values ... ok
test additions_removals_values_and_labels_preserve_customised_note ... ok
test distinct_repeated_types_return_quiet_concurrent_edit_notice ... ok
test dropped_extension_parameters_keep_their_order_and_do_not_conflict_with_local_values ... ok
test apple_reordering_churn_photo_and_dropped_extension_do_not_lose_local_edits ... ok
test distinct_ungrouped_types_merge_reorders_edits_additions_and_deletions ... ok
test phone_note_deletion_does_not_reappear_as_an_empty_note_on_read ... ok
test identical_visible_rows_keep_both_occurrences_during_noop_and_changed_merges ... ok
test phone_notes_with_headings_merge_successfully ... ok
test phone_label_rename_replaces_local_value_edit ... ok
test simultaneous_grouped_phone_and_photo_additions_put_photo_before_card ... ok
test the_first_card_group_is_added_after_an_existing_photo ... ok
test related_links_with_custom_relative_targets_bind_to_the_original_person ... ok
test unchanged_repeated_ungrouped_properties_keep_occurrences ... ok
test local_label_renames_take_phone_deletes_or_value_edits ... ok
test same_line_concurrent_edits_and_deletes_take_phone_group ... ok

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

     Running tests/format3.rs (target/debug/deps/format3-20d9251b32f9f504)

running 21 tests
test ambiguous_single_fact_delete_and_edit_returns_all_previous_lines ... ok
test ambiguous_occurrence_replaces_only_its_group_and_returns_exact_old_lines ... ok
test colliding_colon_renderings_keep_occurrences_or_return_the_phone_group ... ok
test ambiguous_client_group_takes_phone_order_while_other_groups_merge ... ok
test company_and_department_merge_as_separate_single_facts ... ok
test department_hierarchy_is_one_fact_when_both_sides_edit_it ... ok
test identical_repeatable_rows_return_history_instead_of_guessing_hidden_occurrences ... ok
test equal_single_fact_values_still_bind_by_line_order_when_edited ... ok
test concurrent_org_additions_and_deletes_never_stop_sync ... ok
test indistinguishable_single_fact_deletion_returns_phone_group_and_history ... ok
test exact_client_occurrences_win_before_parameterless_identical_additions ... ok
test local_sections_above_notes_stay_local_and_below_become_phone_notes ... ok
test phone_notes_keep_headings_dividers_lists_and_all_blank_lines_exactly ... ok
test identical_syncs_do_not_repeat_a_phone_group_replacement_notice ... ok
test repeated_company_conflict_keeps_independent_department_edits ... ok
test repeated_single_facts_typed_from_scratch_create_separate_properties ... ok
test org_deletions_use_unique_departments_or_return_every_ambiguous_fact ... ok
test several_ambiguous_groups_report_each_previous_group_once ... ok
test repeated_single_facts_bind_edit_delete_and_multiple_edits_to_occurrences ... ok
test unique_values_anchor_client_deletions_even_when_extension_parameters_are_omitted ... ok
test unambiguous_repeated_client_edits_and_deletes_keep_other_occurrences ... ok

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

     Running tests/hostile.rs (target/debug/deps/hostile-c4a1627e97972fae)

running 10 tests
test ambiguous_sources_damaged_notes_and_line_injection_are_errors ... ok
test escapes_empty_values_caret_parameters_and_unknown_sequences ... ok
test malformed_lines_and_mixed_endings_survive_a_neighbor_edit ... ok
test folds_at_arbitrary_byte_boundaries_recover_utf8 ... ok
test arbitrary_note_text_never_panics ... ok
test arbitrary_bytes_never_panic_or_drop_a_byte ... ok
test random_unicode_fields_survive_edits ... ok
test ten_thousand_properties_keep_order_and_raw_lines ... ok
test random_repeated_grouped_properties_keep_their_inventory ... ok
test ten_megabyte_photo_stays_in_original_card_and_round_trips ... ok

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

     Running tests/layout.rs (target/debug/deps/layout-b2fa85031f6b7e27)

running 13 tests
test apple_example_note_matches_the_published_layout ... ok
test google_custom_labels_and_non_gregorian_birthdays_keep_their_wire_details ... ok
test adr_has_three_readable_examples ... ok
test markdown_related_links_with_spaces_and_unicode_are_reversible ... ok
test not_a_field_and_other_sections_stay_exact ... ok
test independent_phone_and_note_edits_preserve_local_spelling ... ok
test notes_are_plain_text_two_way_through_nested_headings ... ok
test photo_reference_is_an_attachment_io_boundary ... ok
test phone_edit_appends_to_group_and_keeps_spacing_and_local_lines ... ok
test renaming_an_apple_label_changes_only_its_label_property ... ok
test typed_edits_after_reading_a_note_patch_the_readable_card ... ok
test each_visible_edit_preserves_other_raw_lines ... ok
test readable_layout_and_all_agreed_fields ... ok

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

     Running tests/roundtrip.rs (target/debug/deps/roundtrip-1ae9952994b37d14)

running 10 tests
test editing_geo_keeps_coordinate_precision_and_semicolon_structure ... ok
test add_delete_and_repeated_fields_keep_the_right_occurrence ... ok
test new_and_edited_canonical_notes_are_identical_after_wire_import ... ok
test new_contact_uid_is_note_id_and_default_is_three ... ok
test hand_edit_uses_external_original_until_export ... ok
test structured_names_addresses_labels_and_partial_dates_are_typed ... ok
test reordering_fields_and_changing_value_tags_cannot_make_an_unstable_note ... ok
test version_mapping_keeps_phone_text_preferences_and_photo_bytes ... ok
test corpus_is_identical_in_both_directions ... ok
test editing_each_field_changes_only_its_raw_occurrence ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_contacts_actions-f0acb91e8878acfc)

running 130 tests
test cards::tests::ids_cannot_leave_the_folder ... ok
test facts::tests::a_card_without_a_name ... ok
test facts::tests::reads_name_and_facts_in_order ... ok
test frontmatter::tests::a_body_divider_is_not_frontmatter ... ok
test frontmatter::tests::no_frontmatter_is_left_alone ... ok
test frontmatter::tests::splits_and_joins_back_exactly ... ok
test jobs::tests::attempts_are_stable_and_distinct ... ok
test import::tests::identity_is_the_uid_or_the_bytes ... ok
test cards::tests::copies_are_written_whole_and_removed ... ok
test names::tests::bidi_controls_never_reach_a_file_name_but_joiners_do ... ok
test names::tests::a_fact_equal_to_the_name_is_skipped ... ok
test names::tests::case_and_unicode_form_clash ... ok
test names::tests::empty_and_emoji_names ... ok
test names::tests::clashes_add_the_first_fact_then_a_number ... ok
test names::tests::illegal_characters_become_dashes ... ok
test names::tests::nfd_and_nfc_give_one_name ... ok
test namer::tests::names_come_from_the_note_and_its_card ... ok
test names::tests::long_names_are_cut_between_whole_characters ... ok
test tests::basics::bad_cards_are_refused_and_nothing_is_written ... ok
test tests::basics::contact_actions_never_touch_other_notes ... ok
test tests::basics::a_retry_with_the_same_key_makes_one_contact ... ok
test tests::basics::a_new_name_renames_and_links_follow ... ok
test tests::basics::create_writes_the_note_and_its_card ... ok
test tests::basics::update_merges_and_keeps_typing ... ok
test tests::basics::delete_goes_to_the_trash_and_restore_brings_it_back ... ok
test tests::break_links::a_rename_onto_an_existing_file ... ok
test tests::break_links::case_only_renames ... ok
test tests::break_links::code_stays_and_anchors_travel ... ok
test tests::break_links::deleted_forever_links_say_so ... ok
test tests::break_links::relative_links_from_subfolders ... ok
test tests::break_links::rename_chains ... ok

Gate output verbatim. Command: `cargo test -j3 --workspace --no-fail-fast`. Exit: 101. Final tests branch head: edba00ec64f3afe5780caade7637cb4ffed5cffa. The full run was at 108a711b; the only later change is one test-only lint allowance for an intentional outside-program write. No test behavior changed. Part 1/3. ```text Compiling serde_core v1.0.229 Compiling log v0.4.34 Compiling bytes v1.12.1 Compiling mio v1.2.4 Compiling tracing-core v0.1.36 Compiling tracing v0.1.44 Compiling errno v0.3.14 Compiling signal-hook-registry v1.4.8 Compiling parking_lot v0.12.5 Compiling socket2 v0.6.5 Compiling thiserror v2.0.21 Compiling tokio v1.53.2 Compiling ref-cast v1.0.27 Compiling rusqlite v0.40.2 Compiling notify v9.0.0-rc.5 Compiling calternal-fsio v0.1.0 (/home/agent/wt/review-755/crates/fsio) Compiling rand v0.10.3 Compiling num-traits v0.2.19 Compiling futures-core v0.3.34 Compiling http v1.5.0 Compiling serde v1.0.229 Compiling serde_json v1.0.154 Compiling uuid v1.28.0 Compiling calternal-testkit v0.1.0 (/home/agent/wt/review-755/crates/testkit) Compiling futures-sink v0.3.34 Compiling percent-encoding v2.3.2 Compiling httparse v1.10.1 Compiling futures-channel v0.3.34 Compiling slab v0.4.12 Compiling data-encoding v2.11.1 Compiling futures-task v0.3.34 Compiling futures-io v0.3.34 Compiling zerocopy v0.8.62 Compiling futures-util v0.3.34 Compiling getrandom v0.3.4 Compiling rand_core v0.9.5 Compiling ppv-lite86 v0.2.21 Compiling schemars v1.2.3 Compiling generic-array v0.14.7 Compiling rand_chacha v0.9.0 Compiling form_urlencoded v1.2.2 Compiling rand v0.9.5 Compiling http-body v1.1.0 Compiling simd-adler32 v0.3.10 Compiling adler2 v2.0.1 Compiling alloc-no-stdlib v3.0.0 Compiling miniz_oxide v0.9.1 Compiling alloc-stdlib v0.3.0 Compiling crc32fast v1.5.2 Compiling block-buffer v0.10.4 Compiling crypto-common v0.1.7 Compiling lazy_static v1.5.1 Compiling tower-service v0.3.3 Compiling digest v0.10.7 Compiling flate2 v1.1.10 Compiling zerofrom v0.1.8 Compiling brotli-decompressor v6.0.1 Compiling tower-layer v0.3.3 Compiling cpufeatures v0.2.17 Compiling mime v0.3.17 Compiling httpdate v1.0.3 Compiling stable_deref_trait v1.2.1 Compiling brotli v9.0.0 Compiling yoke v0.8.3 Compiling sha1 v0.10.7 Compiling http-body-util v0.1.5 Compiling tokio-util v0.7.20 Compiling mime_guess v2.0.5 Compiling atomic-waker v1.1.2 Compiling sync_wrapper v1.0.2 Compiling compression-core v0.4.33 Compiling hyper v1.12.0 Compiling compression-codecs v0.4.45 Compiling tungstenite v0.29.0 Compiling zerovec v0.11.8 Compiling hyper-util v0.1.21 Compiling calternal-core v0.1.0 (/home/agent/wt/review-755/crates/core) Compiling async-compression v0.4.50 Compiling calternal-store v0.1.0 (/home/agent/wt/review-755/crates/store) Compiling axum-core v0.5.6 Compiling tower v0.5.3 Compiling calternal-engine v0.1.0 (/home/agent/wt/review-755/crates/engine) Compiling tokio-tungstenite v0.29.0 Compiling serde_urlencoded v0.7.1 Compiling serde_path_to_error v0.1.20 Compiling http-range-header v0.4.2 Compiling matchit v0.8.4 Compiling tower-http v0.6.11 Compiling tinystr v0.8.4 Compiling writeable v0.6.4 Compiling litemap v0.8.3 Compiling icu_locale_core v2.3.0 Compiling axum v0.8.9 Compiling potential_utf v0.1.6 Compiling zerotrie v0.2.5 Compiling utf8_iter v1.0.4 Compiling icu_collections v2.3.0 Compiling icu_provider v2.3.1 Compiling sha1 v0.11.0 Compiling minimal-lexical v0.2.1 Compiling nom v7.1.3 Compiling tungstenite v0.30.0 Compiling icu_properties_data v2.3.0 Compiling icu_normalizer_data v2.3.0 Compiling thiserror v1.0.69 Compiling icu_normalizer v2.3.0 Compiling icu_properties v2.3.0 Compiling rusticata-macros v4.1.0 Compiling zeroize v1.9.1 Compiling serde_yaml v0.9.34+deprecated Compiling tokio-tungstenite v0.30.0 Compiling rustls-pki-types v1.15.1 Compiling asn1-rs v0.6.2 Compiling yrs v0.28.0 Compiling idna_adapter v1.2.2 Compiling calternal-plugin-hello v0.1.0 (/home/agent/wt/review-755/crates/plugin-hello) Compiling num-integer v0.1.47 Compiling getrandom v0.2.17 Compiling foreign-types-shared v0.1.1 Compiling base64 v0.21.7 Compiling untrusted v0.9.0 Compiling ring v0.17.14 Compiling base64urlsafedata v0.5.5 Compiling foreign-types v0.3.2 Compiling num-bigint v0.4.8 Compiling idna v1.1.0 Compiling openssl-sys v0.9.117 Compiling calternal-server v0.1.0 (/home/agent/wt/review-755/crates/server) Compiling imagesize v0.14.0 Compiling base64 v0.23.1 Compiling openssl v0.10.81 Compiling url v2.5.8 Compiling der-parser v9.0.0 Compiling oid-registry v0.7.1 Compiling rustls-webpki v0.103.15 Compiling half v2.7.1 Compiling web-time v1.1.0 Compiling subtle v2.6.1 Compiling rustls v0.23.46 Compiling x509-parser v0.16.0 Compiling calternal-notes v0.1.0 (/home/agent/wt/review-755/crates/notes) Compiling cfb v0.14.0 Compiling serde_cbor_2 v0.13.0 Compiling webauthn-rs-proto v0.5.5 Compiling webauthn-attestation-ca v0.5.5 Compiling ureq-proto v0.6.4 Compiling webpki-roots v1.0.9 Compiling utf8-zero v0.8.1 Compiling hex v0.4.3 Compiling ureq v3.4.2 Compiling webauthn-rs-core v0.5.5 Compiling infer v0.22.0 Compiling proptest v1.12.0 Compiling unicode-script v0.5.8 Compiling unicode-security v0.1.2 Compiling unicode-general-category v0.6.0 Compiling calternal-attachments v0.1.0 (/home/agent/wt/review-755/crates/attachments) Compiling calternal-backdrops v0.1.0 (/home/agent/wt/review-755/crates/backdrops) Compiling webauthn-rs v0.5.5 Compiling calternal-contacts v0.1.0 (/home/agent/wt/review-755/crates/contacts) Compiling unicode-casefold v0.2.0 Compiling calternal-auth v0.1.0 (/home/agent/wt/review-755/crates/auth) Compiling regex-automata v0.4.18 Compiling matchers v0.2.0 Compiling sharded-slab v0.1.7 Compiling tracing-log v0.2.0 Compiling thread_local v1.1.10 Compiling nu-ansi-term v0.50.3 Compiling tracing-subscriber v0.3.23 Compiling futures-executor v0.3.34 Compiling async-stream v0.3.6 Compiling futures v0.3.34 Compiling tokio-stream v0.1.19 Compiling serde_bytes v0.11.19 Compiling bitflags v1.3.2 Compiling webauthn-authenticator-rs v0.5.5 Compiling calternal-search v0.1.0 (/home/agent/wt/review-755/crates/search) Compiling calternal-tasks v0.1.0 (/home/agent/wt/review-755/crates/tasks) Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/review-755/crates/contacts-actions) Compiling calternal-daily v0.1.0 (/home/agent/wt/review-755/crates/daily) Compiling calternal-prefs v0.1.0 (/home/agent/wt/review-755/crates/prefs) Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/review-755/crates/migrate-v0) Compiling calternal-fixtures v0.1.0 (/home/agent/wt/review-755/crates/fixtures) Compiling calternal-perf v0.1.0 (/home/agent/wt/review-755/crates/perf) Compiling calternal v0.1.0 (/home/agent/wt/review-755/crates/calternal) Compiling calternal-memory v0.1.0 (/home/agent/wt/review-755/crates/memory) Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 10s Running unittests src/main.rs (target/debug/deps/calternal-99ec66c89b429b22) running 32 tests test admin::tests::a_stop_sent_before_subscribing_is_still_seen ... ok test admin::tests::an_active_request_gets_a_graceful_shutdown_window ... ok test args::tests::defaults_and_flags ... ok test args::tests::dev_user_never_on_a_public_address ... ok test args::tests::fix_commands ... ok test args::tests::migrate_v0 ... ok test args::tests::origin_defaults_to_the_local_port ... ok test args::tests::setup_and_re_pair_are_explicit ... ok test admin::tests::shutdown_stops_a_client_waiting_on_a_partial_request ... ok test args::tests::state_defaults_to_resolved_data_and_flags_override_environment ... ok test args::tests::user_create ... ok test args::tests::user_recover ... ok test args::tests::web_folder ... ok test admin::tests::a_restart_waits_out_an_admin_request_longer_than_ten_seconds ... ok test isolation::bob_cannot_reach_alices_attachments ... ok test isolation::in_process_server_shutdown_releases_both_roots_200x_under_load ... ignored, stress gate; run explicitly during release validation test isolation::people::backdrops_spend_the_same_counter_as_small_attachments ... ok test isolation::contacts_and_tasks_in_one_home_keep_their_own_members ... ok test isolation::people::duplicate_upload_at_quota_must_not_spend_bytes_twice ... ok test isolation::people::normal_token_failures_do_not_log_or_persist_plaintext ... ok test isolation::people::real_upload_storm_notes_trash_restore_and_delete_usage ... ok test isolation::bob_cannot_join_alices_note_room ... ok test isolation::quota_refuses_large_and_small_uploads_while_notes_still_save ... ok test isolation::people_actions_hide_real_ids_from_members_other_users_and_anonymous_callers ... ok test isolation::bob_reaches_nothing_of_alices_through_any_action ... ok test isolation::split_storage_keeps_originals_and_databases_on_their_disks ... ok test plugins::tests::contract_matches_the_server ... ok test shutdown_io::tests::shutdown_bounds_response_writes_to_a_peer_that_stops_reading ... ok test shutdown_io::tests::shutdown_finishes_an_idle_read_and_keeps_response_writes_open ... ok test isolation::renaming_a_task_retargets_task_and_contact_links_once ... ok test isolation::people::every_action_obeys_person_visibility ... ok test isolation::randomized_home_shutdown_releases_both_roots ... ok test result: ok. 31 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.33s Running tests/attachments_crash.rs (target/debug/deps/attachments_crash-7fe342b417399798) running 2 tests test kill_nine_mid_upload_leaves_nothing_half_written ... ok test a_big_upload_streams_in_bounded_memory ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.53s Running tests/contacts_live.rs (target/debug/deps/contacts_live-eda4c5c7a44cf8d6) running 2 tests test a_phone_renames_a_contact_while_someone_types_in_a_linking_note ... ok test a_live_h1_collision_keeps_contact_and_incoming_link_identity ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.26s Running tests/fix_tz_live.rs (target/debug/deps/fix_tz_live-9965f2da35af43e9) running 2 tests test fix_without_a_running_server_says_so ... ok test strip_tz_markers_on_a_live_home_with_a_client_typing ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.69s Running tests/notes_crash.rs (target/debug/deps/notes_crash-f79d4295ad35e653) running 3 tests test kill_nine_mid_append_on_a_long_note ... ok test kill_nine_mid_tag_rename_renames_each_tag_once ... ok test kill_nine_never_loses_or_doubles ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.31s Running tests/notes_crash_typing.rs (target/debug/deps/notes_crash_typing-1b7cac4786b12284) running 1 test test kill_nine_while_people_type_loses_and_doubles_nothing ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.62s Running tests/notes_live.rs (target/debug/deps/notes_live-13334bf94ab0d25f) running 2 tests test joining_a_missing_note_fails_politely ... ok test type_over_the_websocket_and_read_it_back ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s Running tests/prefs_live.rs (target/debug/deps/prefs_live-06841d9f5105653b) running 1 test test preferences_are_saved_checked_and_kept ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running tests/search_live.rs (target/debug/deps/search_live-68b3118344175121) running 2 tests test perf_live_empty_search_under_one_second ... ignored, live empty-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test notes_from_everywhere_are_found ... ok test result: ok. 1 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.81s Running tests/startup.rs (target/debug/deps/startup-c012f5172b16129f) running 6 tests test perf_startup_under_500ms ... ignored, startup latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test refuses_dev_user_on_a_public_address ... ok test refuses_plain_http_on_a_public_origin ... ok test recover_only_knows_real_people ... ok test answers_after_launch ... ok test a_new_server_prints_a_setup_token ... ok test result: ok. 5 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.03s Running tests/startup_quota.rs (target/debug/deps/startup_quota-de0a50c9547d2937) running 1 test test first_upload_after_healthz_enforces_existing_home_usage ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/storage_startup.rs (target/debug/deps/storage_startup-69b0d7f263386f2d) running 11 tests test a_lock_held_past_the_longest_grace_still_fails_startup ... ok test create_refuses_unpaired_notes_or_databases_before_creating_other_root ... ok test legacy_history_read_only_and_invalid_state_are_refused ... ok test both_missing_markers_with_existing_split_data_require_confirmed_re_pair ... ok test original_storage_startup_scenario_repeats_100x_under_load ... ignored, stress gate; run explicitly during release validation test missing_home_refuses_without_creating_directory_or_lock ... ok test missing_state_never_recreates_databases_even_with_create ... ok test single_root_upgrade_backup_split_cache_delete_and_rollback ... ok test startup_waits_for_a_previous_server_to_release_both_roots ... ok test roots_must_keep_their_persistent_partner_and_admin_must_confirm ... ok test both_roots_remain_exclusively_locked ... ok test result: ok. 10 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 10.11s Running unittests src/lib.rs (target/debug/deps/calternal_attachments-93f795bb7f298b97) running 19 tests test serve::tests::dispositions_quote_safely ... ok test serve::tests::only_plain_visible_paths_are_served ... ok test serve::tests::ranges ... ok test tests::http::a_connection_that_breaks_off_leaves_nothing ... ok test tests::http::an_upload_lands_in_its_dated_folder_and_is_served_back ... ok test tests::http::a_retry_with_the_same_key_never_makes_a_second_copy ... ok test tests::http::check_finds_only_your_own_files ... ok test tests::http::paths_that_climb_out_of_the_home_are_not_found ... ok test tests::http::the_sweep_removes_what_a_crash_left_and_spares_live_uploads ... ok test tests::http::the_limit_holds_while_streaming_without_a_length ... ok test tests::http::uploads_need_a_session_our_page_and_a_key ... ok test tests::sniffing::days_are_strict ... ok test tests::sniffing::names_are_kept_but_made_safe ... ok test tests::http::names_can_not_steer_where_a_file_goes ... ok test tests::sniffing::pictures_and_videos_go_to_photos ... ok test tests::sniffing::text_types_come_from_the_extension_and_html_never_runs ... ok test tests::sniffing::the_name_never_decides_a_binary_type ... ok test tests::http::the_same_file_again_says_already_uploaded_and_keeps_one_copy ... ok test tests::http::unsafe_types_are_downloads_with_a_strict_policy ... ok test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s Running unittests src/lib.rs (target/debug/deps/calternal_auth-255e151c8552a0db) running 30 tests test config::tests::origins ... ok test ceremony::tests::anonymous_pool_stays_bounded_and_evicts_oldest ... ok test db::tests::a_version_1_database_gets_passkey_names ... ok test ceremony::tests::full_pool_refuses_foreign_source_without_discarding_live_prompt ... ok test db::tests::existing_database_keeps_people_credentials_and_sessions ... ok test http::cookie_tests::session_cookie_is_host_only_and_secure ... ok test invite_key::tests::lookup_uses_a_separate_derived_key_and_depends_on_the_server_key ... ok test invite_redeem::tests::expiry_and_clock_rollback_use_the_same_validation_path ... ok test invite_redeem::tests::invalid_invite_classes_perform_one_lookup_and_one_secret_comparison ... ok test invite_redeem::tests::invalid_invites_do_not_reveal_name_conflicts ... ok test limit::reliability_tests::backoff_expires_is_capped_and_refusals_do_not_extend_it ... ok test limit::reliability_tests::buckets_are_independent_and_bounded ... ok test limit::reliability_tests::full_map_evicts_least_recent_without_refusing_new_sources ... ok test db::tests::opens_twice_and_keeps_schema ... ok test limit::reliability_tests::target_capacity_preserves_live_budgets_and_evicts_only_oldest_expired ... ok test passkeys::tests::ids_round_trip ... ok test passkeys::tests::names_are_trimmed_short_and_never_empty ... ok test http::proxy_tests::forwarding_stops_at_first_untrusted_hop_and_rejects_malformed_chains ... ok test session::tests::names_are_cleaned ... ok test invite_key::tests::key_round_trips_but_modified_ciphertext_and_another_id_fail ... ok test setup::tests::names ... ok test setup::tests::names_reject_invisible_and_normalize_nfc ... ok test setup::tests::recover_needs_a_known_person ... ok test quota::independent_review_755::second_upload_during_registration_must_count_outside_growth ... FAILED test setup::tests::usernames ... ok test token::tests::junk_is_not_a_token ... ok test token::tests::setup_tokens_round_trip_through_pasting ... ok test setup::tests::recovery_requires_exact_username_or_uuid_never_display_name ... ok test setup::tests::cli_creation_refuses_admin_name_confusables ... ok test limit::reliability_tests::source_churn_cannot_reset_target_budget ... ok failures: ---- quota::independent_review_755::second_upload_during_registration_must_count_outside_growth stdout ---- thread 'quota::independent_review_755::second_upload_during_registration_must_count_outside_growth' (3111187) panicked at crates/auth/src/quota.rs:135:9: accepted an upload although outside bytes exhausted quota note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace failures: quota::independent_review_755::second_upload_during_registration_must_count_outside_growth test result: FAILED. 29 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.65s error: test failed, to rerun pass `-p calternal-auth --lib` Running tests/abuse.rs (target/debug/deps/abuse-0554e7d0c90fe37c) running 12 tests test bad_json_and_unknown_fields_are_refused ... ok test forged_sessions_get_nowhere ... ok test anonymous_prompt_flood_preserves_login_setup_and_add ... ok test duplicate_session_cookies_never_choose_an_identity ... ok test junk_setup_tokens_are_refused_then_rate_limited ... ok test non_json_requests_are_refused ... ok test login_source_limit_does_not_block_another_client ... ok test nothing_about_the_server_leaks_before_sign_in ... ok test one_source_cannot_lock_out_another_and_cannot_spoof_forwarding ... ok test other_sites_cannot_act_for_you ... ok test oversized_bodies_are_refused ... ok test garbage_credentials_never_crash ... ok test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s Running tests/create.rs (target/debug/deps/create-faf1e08e43feb7a0) running 6 tests test an_expired_enrolment_token_is_refused ... ok test an_earlier_first_owner_token_stops_working ... ok test a_created_person_enrolls_their_first_passkey_and_is_the_same_person ... ok test nothing_about_the_person_leaks_before_sign_in ... ok test names_must_be_usable_and_unique ... ok test an_enrolment_token_works_exactly_once_under_a_storm ... ok test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Running tests/groups.rs (target/debug/deps/groups-dc189b287733fdc8) running 1 test test shared_groups_control_visibility_and_managers_only_edit_local_members ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s Running tests/host_cookies.rs (target/debug/deps/host_cookies-beeadd0af6097bba) running 3 tests test old_name_is_ignored_and_cleared_once_without_touching_host_session ... ok test duplicate_host_headers_and_stale_requests_never_clear_new_session ... ok test upgrading_schema_six_removes_cookie_state_and_keeps_passkeys ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s Running tests/invites.rs (target/debug/deps/invites-19edd38116a65a09) running 8 tests test invite_finish_rechecks_admin_names_after_role_changes ... ok test invite_admin_names_cannot_be_impersonated_and_failure_preserves_invite ... ok test invite_can_be_copied_after_restart_and_only_one_racing_passkey_wins ... ok test invite_redemption_joins_its_groups_and_other_inviters_cannot_copy_it ... ok test losing_the_key_does_not_replace_it_and_invite_secrets_never_enter_action_history ... ok test legacy_invite_indexes_upgrade_atomically_and_keep_copy_and_redemption ... ok test wrong_expired_used_and_revoked_invites_give_one_answer ... ok test invite_redemption_reaches_a_visible_admin_but_not_an_unrelated_member ... ok test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.26s Running tests/isolation.rs (target/debug/deps/isolation-e530a8e5c8c4e66c) running 3 tests test a_cookie_sent_from_another_sites_page_does_not_count ... ok test another_persons_passkey_prompt_cannot_be_used_or_cancelled ... ok test devices_and_passkeys_of_another_person_are_not_found ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Running tests/login.rs (target/debug/deps/login-fa49803f77e2d84b) running 11 tests test bearer_tokens_work_like_cookies ... ok test foreign_status_cannot_sign_the_browser_out ... ok test a_sign_in_answer_cannot_be_replayed ... ok test an_unknown_passkey_is_refused ... ok test revoking_another_device_signs_it_out ... ok test logout_revokes_the_installation_and_rejects_live_cookies ... ok test sign_out_ends_the_session_immediately ... ok test sign_in_with_a_passkey_creates_a_new_installation ... ok test signing_in_shows_up_live_on_another_device ... ok test signing_out_shows_up_live_on_another_device ... ok test sessions_expire_when_unused ... ok test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s Running tests/migration.rs (target/debug/deps/migration-173ed6d888a076df) running 1 test test schema_two_copy_keeps_real_credentials_sessions_and_recovery ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Running tests/passkeys.rs (target/debug/deps/passkeys-101589e5a9ccd67d) running 7 tests test an_empty_name_is_refused_and_a_long_one_is_cut ... ok test adding_needs_a_sign_in_and_an_add_prompt_works_once ... ok test a_removed_passkey_that_is_gone_or_unknown_is_not_found ... ok test add_rename_and_remove_each_leave_a_journal_event ... ok test the_first_passkey_is_listed_with_the_device_it_was_made_on ... ok test the_same_device_cannot_be_added_twice ... ok test the_last_passkey_cannot_be_removed ... ok test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s Running tests/people.rs (target/debug/deps/people-b1a51f7c6c0ce717) running 4 tests test first_owner_has_capabilities_and_cannot_demote_the_last_admin ... ok test promotion_cannot_create_confusable_admin_names ... ok test two_admins_racing_to_demote_themselves_leave_one_admin ... ok test member_cannot_change_roles_and_new_capability_sets_work ... ok test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running tests/quota_counter.rs (target/debug/deps/quota_counter-30009d6a020114a5) running 3 tests test perf_signin_during_large_recount_under_fifty_ms ... ignored, sign-in latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test small_uploads_spend_the_same_allowance_as_large_uploads ... ok test signin_finishes_before_a_large_recount ... ok test result: ok. 2 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.85s Running tests/reliability_review.rs (target/debug/deps/reliability_review-3d350d56853b757e) running 22 tests test authentication_database_does_not_wait_for_general_blocking_workers ... ok test anonymous_flood_must_not_evict_other_persons_prompt ... ok test crash_child_exit ... ignored test concurrent_quota_admissions_do_not_overspend ... ok test counter_concurrent_mutations_drift_and_restart ... ok test directory_moves_keep_child_accounting_and_deletes_correct ... ok test default_twenty_mib_stream_boundary ... ok test independent_login_latency_during_recount ... ignored, latency budget runs on the perf VM via perf/auth-latency-vm.sh test ipv6_prefix_must_share_budget ... ok test directory_move_during_initial_recount_must_track_later_deletes ... ok test names_normalization_recovery_and_invisibles ... ok test normalized_setup_token_must_share_target_budget ... ok test perf_ipv6_source_rotation_under_fifty_five_seconds ... ignored, IPv6 source-churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test repeated_bad_signatures_for_one_account_must_share_budget ... ok test restart_recovers_disk_update_missing_counter_notification ... ok test slow_uploads_must_not_starve_authentication_blocking_pool ... ok test source_isolation_and_untrusted_forwarding ... ok test streamed_slow_exact_over_abort_and_quota_replacement ... ok test trusted_proxy_uses_nearest_untrusted_hop ... ok test ipv6_rotation_must_not_lock_out_new_source ... ok test account_owner_can_sign_in_after_backoff_and_success_resets_failures ... ok test independent_login_completes_before_recount ... ok test result: ok. 19 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 1.79s Running tests/reliability_round3.rs (target/debug/deps/reliability_round3-738ca56715d10648) running 12 tests test canonical_recovery_token_variants_share_one_target_without_spending_other_tokens ... ok test attachment_and_backdrop_routes_share_caps_and_cancel_cleanup ... ok test ipv4_mapped_v6_and_native_v4_share_budget_but_adjacent_prefix_does_not ... ok test fifty_slow_upload_attempts_preserve_full_signin_and_status ... ok test over_ten_thousand_distinct_source_buckets_still_admit_new_clients ... ok test perf_signin_and_status_during_slow_uploads_under_fifty_ms ... ignored, sign-in and status latency budgets run on the perf VM via perf/ordinary-latency-vm.sh test perf_source_bucket_churn_under_fifty_five_seconds ... ignored, source-bucket churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test rename_collision_and_replacement_keep_correct_usage ... ok test setup_target_budget_survives_more_than_ten_thousand_sources ... ok test idle_deadline_cleans_files_and_reopens_each_person_capacity ... ok test attachment_slow_bodies_must_not_hold_all_general_blocking_workers ... ok test maximum_account_backoff_releases_owner_despite_refused_retries has been running for over 60 seconds test maximum_account_backoff_releases_owner_despite_refused_retries ... ok test result: ok. 10 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 123.87s Running tests/security_regressions.rs (target/debug/deps/security_regressions-b0a62a9a2f116cc4) running 15 tests test concurrent_key_creation_publishes_one_complete_key ... ok test eight_parallel_redeemers_create_exactly_one_account ... ok test expiry_during_passkey_registration_consumes_nothing ... ok test every_action_rejects_anonymous_expired_and_unprivileged_writes ... ok test groups_manager_must_obey_single_person_visibility_rule ... ok test invite_lookup_must_use_keyed_hash ... ok test new_modules_are_small_and_documented ... ok test key_permissions_missing_corrupt_and_no_plaintext_history ... ok test perf_invite_failure_timing_classes_within_ratio ... ignored, invite failure timing budget runs on the perf VM via perf/ordinary-latency-vm.sh test malformed_token_must_have_same_generic_response ... ok test revoked_expired_used_and_wrong_fail_equally ... ok test origin_dev_schema_migrates_idempotently_and_rolls_back_partial_failure ... ok test two_admins_demoting_each_other_keep_one_manager ... ok test quota_serializes_large_placements_and_tracks_delete_trash ... ok test all_five_invite_failures_have_the_same_body_and_status ... ok test result: ok. 14 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.28s Running tests/setup.rs (target/debug/deps/setup-5764fb78c30874cb) running 8 tests test a_restart_replaces_the_first_owner_token ... ok test a_finished_prompt_cannot_be_replayed ... ok test first_owner_needs_a_name ... ok test first_owner_signs_up_with_the_printed_token ... ok test a_token_works_exactly_once_under_a_storm ... ok test recovery_adds_a_new_passkey_for_the_same_person ... ok test session_cookie_is_locked_down ... ok test an_expired_setup_token_is_refused ... ok test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s Running unittests src/lib.rs (target/debug/deps/calternal_backdrops-fbe7c54c8247e701) running 25 tests test tests::an_answer_that_is_not_a_picture_is_refused_and_not_kept ... ok test tests::a_photo_unknown_to_us_is_looked_up ... ok test tests::a_stricter_attachment_limit_also_bounds_backdrops ... ok test tests::an_upload_is_private_to_the_person_who_made_it ... ok test tests::changes_need_our_own_page_and_a_signed_in_person ... ok test tests::bad_ids_never_reach_the_disk_or_the_network ... ok test tests::an_upload_is_kept_once_and_served_back ... ok test tests::pictures_are_proxied_cached_and_never_given_the_key ... ok test tests::picking_is_reported_to_unsplash_once ... ok test tests::nobody_can_read_or_list_someone_elses_uploads ... ok test tests::pictures_from_other_hosts_are_refused ... ok test tests::search_lists_photos_with_our_own_addresses_and_credit ... ok test tests::storage_cache::split_cache_deletion_refetches_upstream_and_keeps_original_upload ... ok test tests::the_real_client_sends_the_key_and_caps_the_size ... ok test tests::the_real_client_speaks_https_to_unsplash ... ignored, needs the internet test tests::the_same_search_is_answered_once ... ok test tests::the_cache_drops_the_oldest_files_past_its_cap ... ok test tests::unsplash_running_out_of_requests_is_a_plain_slow_down ... ok test tests::uploads_are_checked_by_content_not_by_what_they_claim ... ok test tests::without_a_key_photos_are_off_but_uploads_work ... ok test uploads::reliability_tests::idle_upload_removes_temporary_file_and_releases_admission ... ok test tests::too_many_pixels_are_refused_but_files_within_the_byte_limit_work ... ok test tests::backdrop_quota_refuses_new_files_and_releases_space_on_delete ... ok test tests::streaming_upload_stops_at_byte_limit_and_leaves_no_artifact ... ok test uploads::reliability_tests::upload_admission_is_bounded_and_cancellation_restores_capacity ... ok test result: ok. 24 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.10s Running unittests src/lib.rs (target/debug/deps/calternal_contacts-deee87ac187bc93b) running 1 test test note::related_links_tests::only_the_cards_related_group_names_related_people ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/apple.rs (target/debug/deps/apple-61fc3a1b2bd29e4b) running 4 tests test unchanged_duplicate_ungrouped_occurrences_merge ... ok test apple_rewrite_keeps_canonical_extensions_and_takes_real_edits ... ok test client_deletion_requires_sent_field_and_uid_is_immutable ... ok test unsent_note_changes_survive_and_concurrent_edits_return_history ... ok test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/break_codec.rs (target/debug/deps/break_codec-15475a0d7ca6c0a4) running 11 tests test envelope_checks_and_original_copy_reject_ambiguous_or_edited_state ... ok test escaped_separator_parity_keeps_component_and_list_boundaries ... ok test canonical_note_comparison_checks_every_byte_and_falls_back_for_local_sections ... ok test folded_and_unfolded_utf8_lines_keep_values_and_their_original_bytes ... ok test bare_properties_and_ignored_parameter_properties_decode_the_same_values ... ok test multiline_google_custom_labels_cannot_create_other_card_groups ... ok test quoted_parameter_delimiters_and_value_colons_keep_their_meaning ... ok test original_and_edited_note_snapshots_both_preserve_later_typed_edits ... ok test typed_reordering_and_value_tag_changes_use_the_exported_wire_projection ... ok test component_and_list_comparisons_preserve_empty_parts_and_noncanonical_escapes ... ok test mixed_rendered_values_keep_all_other_bytes_during_a_client_edit ... ok test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/break_generated.rs (target/debug/deps/break_generated-9ea63687a5138cbc) running 9 tests test fixed_seed_generated_shapes_include_every_reaudit_case ... ok test arbitrary_wire_and_note_inputs_preserve_bytes_or_explain_rejection ... ok test independent_vendor_shaped_cards_keep_foldings_metadata_and_unknowns ... ok test generated_notes_shapes_and_repeated_fact_edits_round_trip ... ok test synthetic_vendor_corpus_is_bidirectionally_byte_identical ... ok test five_megabyte_notes_survive_both_conversions ... ok test generated_valid_cards_and_messy_notes_keep_every_field ... ok test ten_thousand_new_custom_labels_get_unique_groups_and_round_trip ... ok test megabyte_value_ten_thousand_visible_fields_and_ten_megabyte_photo ... ok test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.18s Running tests/break_inventory.rs (target/debug/deps/break_inventory-3c1714eff10efaff) running 1 test test every_inventory_property_survives_a_neighbour_edit ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/break_labels.rs (target/debug/deps/break_labels-7948c8c9f796b6d3) running 2 tests test names_use_human_order_even_when_vendor_properties_are_reordered ... ok test builtin_labels_show_the_words_on_the_phone_and_recover_original_codes ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/break_layout.rs (target/debug/deps/break_layout-2358837d887c8bbc) running 27 tests test a_phone_note_containing_h2_or_h1_round_trips ... ok test ambiguous_simultaneous_colon_edit_returns_phone_group_and_history ... ok test colon_label_renames_survive_a_following_client_edit ... ok test colon_bearing_label_edits_change_only_the_label_and_value_edits_only_the_value ... ok test company_and_department_edits_share_one_org_in_either_note_order ... ok test duplicate_structured_name_parts_are_unrepresentable ... ok test crlf_notes_preserve_original_escape_spelling_and_do_not_create_merge_conflicts ... ok test colons_delimiters_and_unicode_keep_their_exact_wire_values ... ok test first_list_ends_at_a_paragraph_and_second_list_stays_local ... ok test entering_a_birthday_year_clears_the_apple_omit_year_flag ... ok test later_notes_headings_are_phone_text ... ok test flat_repeatable_lines_stay_and_are_reported ... ok test empty_visible_properties_are_not_deleted_on_an_unchanged_round_trip ... ok test missing_h1_explains_rejection_and_empty_card_is_allowed ... ok test multiline_labels_never_turn_into_unreported_fields ... ok test missing_wire_display_name_is_not_silently_created_by_a_round_trip ... ok test multiple_unrepresentable_document_fields_explain_rejection ... ok test note_headings_and_crlf_do_not_change_plain_text ... ok test multiple_edits_to_indistinguishable_occurrences_do_not_guess_hidden_parameters ... ok test notes_heading_after_a_local_h1_owns_the_tail ... ok test tags_keep_list_boundaries_when_a_category_contains_comma_space ... ok test org_hierarchy_is_one_fact_and_unchanged_components_stay_lossless ... ok test unchanged_values_that_differ_only_by_trailing_spaces_keep_both_occurrences ... ok test utf8_bom_is_document_framing ... ok test unicode_names_keep_normalisation_scripts_direction_and_joiners ... ok test one_property_edit_changes_only_its_original_logical_line ... ok test markdown_whitespace_and_bullets_do_not_edit_the_phone ... ok test result: ok. 27 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/break_links.rs (target/debug/deps/break_links-ce3f10ae119f8486) running 4 tests test a_colon_in_a_related_name_is_text_and_an_explicit_uri_stays_a_uri ... ok test a_plain_name_that_looks_like_a_link_stays_that_name ... ok test escaped_closing_brackets_inside_a_name_are_not_link_delimiters ... ok test related_brackets_and_angle_brackets_are_valid_markdown_and_editable ... ok test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/break_merge.rs (target/debug/deps/break_merge-dae2ac22ab29d554) running 16 tests test crlf_new_group_is_written_once_for_multiple_incoming_values ... ok test additions_removals_values_and_labels_preserve_customised_note ... ok test distinct_repeated_types_return_quiet_concurrent_edit_notice ... ok test dropped_extension_parameters_keep_their_order_and_do_not_conflict_with_local_values ... ok test apple_reordering_churn_photo_and_dropped_extension_do_not_lose_local_edits ... ok test distinct_ungrouped_types_merge_reorders_edits_additions_and_deletions ... ok test phone_note_deletion_does_not_reappear_as_an_empty_note_on_read ... ok test identical_visible_rows_keep_both_occurrences_during_noop_and_changed_merges ... ok test phone_notes_with_headings_merge_successfully ... ok test phone_label_rename_replaces_local_value_edit ... ok test simultaneous_grouped_phone_and_photo_additions_put_photo_before_card ... ok test the_first_card_group_is_added_after_an_existing_photo ... ok test related_links_with_custom_relative_targets_bind_to_the_original_person ... ok test unchanged_repeated_ungrouped_properties_keep_occurrences ... ok test local_label_renames_take_phone_deletes_or_value_edits ... ok test same_line_concurrent_edits_and_deletes_take_phone_group ... ok test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/format3.rs (target/debug/deps/format3-20d9251b32f9f504) running 21 tests test ambiguous_single_fact_delete_and_edit_returns_all_previous_lines ... ok test ambiguous_occurrence_replaces_only_its_group_and_returns_exact_old_lines ... ok test colliding_colon_renderings_keep_occurrences_or_return_the_phone_group ... ok test ambiguous_client_group_takes_phone_order_while_other_groups_merge ... ok test company_and_department_merge_as_separate_single_facts ... ok test department_hierarchy_is_one_fact_when_both_sides_edit_it ... ok test identical_repeatable_rows_return_history_instead_of_guessing_hidden_occurrences ... ok test equal_single_fact_values_still_bind_by_line_order_when_edited ... ok test concurrent_org_additions_and_deletes_never_stop_sync ... ok test indistinguishable_single_fact_deletion_returns_phone_group_and_history ... ok test exact_client_occurrences_win_before_parameterless_identical_additions ... ok test local_sections_above_notes_stay_local_and_below_become_phone_notes ... ok test phone_notes_keep_headings_dividers_lists_and_all_blank_lines_exactly ... ok test identical_syncs_do_not_repeat_a_phone_group_replacement_notice ... ok test repeated_company_conflict_keeps_independent_department_edits ... ok test repeated_single_facts_typed_from_scratch_create_separate_properties ... ok test org_deletions_use_unique_departments_or_return_every_ambiguous_fact ... ok test several_ambiguous_groups_report_each_previous_group_once ... ok test repeated_single_facts_bind_edit_delete_and_multiple_edits_to_occurrences ... ok test unique_values_anchor_client_deletions_even_when_extension_parameters_are_omitted ... ok test unambiguous_repeated_client_edits_and_deletes_keep_other_occurrences ... ok test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/hostile.rs (target/debug/deps/hostile-c4a1627e97972fae) running 10 tests test ambiguous_sources_damaged_notes_and_line_injection_are_errors ... ok test escapes_empty_values_caret_parameters_and_unknown_sequences ... ok test malformed_lines_and_mixed_endings_survive_a_neighbor_edit ... ok test folds_at_arbitrary_byte_boundaries_recover_utf8 ... ok test arbitrary_note_text_never_panics ... ok test arbitrary_bytes_never_panic_or_drop_a_byte ... ok test random_unicode_fields_survive_edits ... ok test ten_thousand_properties_keep_order_and_raw_lines ... ok test random_repeated_grouped_properties_keep_their_inventory ... ok test ten_megabyte_photo_stays_in_original_card_and_round_trips ... ok test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.87s Running tests/layout.rs (target/debug/deps/layout-b2fa85031f6b7e27) running 13 tests test apple_example_note_matches_the_published_layout ... ok test google_custom_labels_and_non_gregorian_birthdays_keep_their_wire_details ... ok test adr_has_three_readable_examples ... ok test markdown_related_links_with_spaces_and_unicode_are_reversible ... ok test not_a_field_and_other_sections_stay_exact ... ok test independent_phone_and_note_edits_preserve_local_spelling ... ok test notes_are_plain_text_two_way_through_nested_headings ... ok test photo_reference_is_an_attachment_io_boundary ... ok test phone_edit_appends_to_group_and_keeps_spacing_and_local_lines ... ok test renaming_an_apple_label_changes_only_its_label_property ... ok test typed_edits_after_reading_a_note_patch_the_readable_card ... ok test each_visible_edit_preserves_other_raw_lines ... ok test readable_layout_and_all_agreed_fields ... ok test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/roundtrip.rs (target/debug/deps/roundtrip-1ae9952994b37d14) running 10 tests test editing_geo_keeps_coordinate_precision_and_semicolon_structure ... ok test add_delete_and_repeated_fields_keep_the_right_occurrence ... ok test new_and_edited_canonical_notes_are_identical_after_wire_import ... ok test new_contact_uid_is_note_id_and_default_is_three ... ok test hand_edit_uses_external_original_until_export ... ok test structured_names_addresses_labels_and_partial_dates_are_typed ... ok test reordering_fields_and_changing_value_tags_cannot_make_an_unstable_note ... ok test version_mapping_keeps_phone_text_preferences_and_photo_bytes ... ok test corpus_is_identical_in_both_directions ... ok test editing_each_field_changes_only_its_raw_occurrence ... ok test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running unittests src/lib.rs (target/debug/deps/calternal_contacts_actions-f0acb91e8878acfc) running 130 tests test cards::tests::ids_cannot_leave_the_folder ... ok test facts::tests::a_card_without_a_name ... ok test facts::tests::reads_name_and_facts_in_order ... ok test frontmatter::tests::a_body_divider_is_not_frontmatter ... ok test frontmatter::tests::no_frontmatter_is_left_alone ... ok test frontmatter::tests::splits_and_joins_back_exactly ... ok test jobs::tests::attempts_are_stable_and_distinct ... ok test import::tests::identity_is_the_uid_or_the_bytes ... ok test cards::tests::copies_are_written_whole_and_removed ... ok test names::tests::bidi_controls_never_reach_a_file_name_but_joiners_do ... ok test names::tests::a_fact_equal_to_the_name_is_skipped ... ok test names::tests::case_and_unicode_form_clash ... ok test names::tests::empty_and_emoji_names ... ok test names::tests::clashes_add_the_first_fact_then_a_number ... ok test names::tests::illegal_characters_become_dashes ... ok test names::tests::nfd_and_nfc_give_one_name ... ok test namer::tests::names_come_from_the_note_and_its_card ... ok test names::tests::long_names_are_cut_between_whole_characters ... ok test tests::basics::bad_cards_are_refused_and_nothing_is_written ... ok test tests::basics::contact_actions_never_touch_other_notes ... ok test tests::basics::a_retry_with_the_same_key_makes_one_contact ... ok test tests::basics::a_new_name_renames_and_links_follow ... ok test tests::basics::create_writes_the_note_and_its_card ... ok test tests::basics::update_merges_and_keeps_typing ... ok test tests::basics::delete_goes_to_the_trash_and_restore_brings_it_back ... ok test tests::break_links::a_rename_onto_an_existing_file ... ok test tests::break_links::case_only_renames ... ok test tests::break_links::code_stays_and_anchors_travel ... ok test tests::break_links::deleted_forever_links_say_so ... ok test tests::break_links::relative_links_from_subfolders ... ok test tests::break_links::rename_chains ... ok ```
Author
Owner

Gate output verbatim. Command: cargo test -j3 --workspace --no-fail-fast. Exit: 101. Final tests branch head: edba00ec64.
The full run was at 108a711b; the only later change is one test-only lint allowance for an intentional outside-program write. No test behavior changed.
Part 2/3.

test tests::break_links::rename_while_another_client_edits_a_linking_note ... ok
test tests::break_links::swapping_two_names ... ok
test tests::break_links::the_checker_finds_dangling_links ... ok
test tests::break_links::nfc_and_nfd_names ... ok
test tests::break_links::the_title_never_renames_a_contact_file ... ok
test tests::break_names::a_name_an_existing_note_has ... ok
test tests::break_names::names_differing_only_in_case_are_one_name ... ok
test tests::break_names::the_folder_is_a_setting ... ok
test tests::break_names::unsafe_characters_never_reach_the_file_name ... ok
test tests::break_names::clashes_add_company_then_city_then_nickname_then_domain_then_a_number ... ok
test tests::correctness::acknowledged_edit_between_undo_preparation_and_deletion_survives ... ok
test tests::break_names::empty_and_emoji_names ... ok
test tests::correctness::crash_after_unlink_finishes_history_and_quota_on_restart ... ok
test tests::correctness::deletion_crash_child ... ok
test tests::break_names::very_long_names_fit_the_byte_limit ... ok
test tests::correctness::deletion_recovery_preserves_an_outside_edit_made_while_down ... ok
test tests::env::fixture_releases_its_engine_and_stores ... ok
test tests::env::pause_markers_accept_serial_and_parallel_child_harness_output ... ok
test tests::correctness::failed_partial_import_releases_every_prepared_card_exactly ... ok
test tests::correctness::bounded_shutdown_joins_the_card_write_and_refuses_later_copies ... ok
test tests::import::an_import_makes_every_new_contact_in_one_job ... ok
test tests::import::bulk_import_preserves_an_id_held_only_by_trash_details ... ok
test tests::import::a_final_flush_failure_undoes_every_published_contact_and_can_retry ... ok
test tests::import::a_final_flush_failure_in_an_existing_folder_preserves_earlier_contacts ... ok
test tests::import::limits_hold ... ok
test tests::kill9::child ... ok
test tests::import::the_same_file_twice_changes_nothing ... ok
test tests::import::parallel_import_keeps_input_order_and_compares_existing_peer_facts ... ok
test tests::kill9::create_killed_prepared ... ok
test tests::break_links::five_thousand_links_across_a_thousand_notes ... ok
test tests::kill9::create_killed_committed ... ok
test tests::kill9::create_killed_copying ... ok
test tests::kill9::edit_killed_committed ... ok
test tests::kill9::import_killed_committed ... ok
test tests::kill9::import_killed_copying ... ok
test tests::kill9::edit_killed_copying ... ok
test tests::kill9::import_killed_planned ... ok
test tests::kill9::import_killed_mid_import ... ok
test tests::kill9::import_killed_prepared ... ok
test tests::kill9::edit_killed_prepared ... ok
test tests::kill9::rename_killed_mid_rename ... ok
test tests::kill9::rename_killed_committed ... ok
test tests::kill9::rename_killed_copying ... ok
test tests::kill9::rename_killed_planned ... ok
test tests::naming::restoring_into_a_taken_name_uses_the_contacts_rule ... ok
test tests::naming::an_h1_typed_in_the_app_renames_by_the_contacts_rule ... ok
test tests::related::an_unchanged_phone_resend_changes_nothing ... ok
test tests::related::a_related_namesake_in_the_same_import_wins_over_the_book ... ok
test tests::related::create_and_update_link_one_person_and_leave_namesakes_plain ... ok
test tests::related::related_names_from_one_import_link_to_the_files_made ... ok
test tests::review3::a_card_saved_with_a_byte_order_mark_is_read ... ok
test tests::review3::a_uidless_card_edited_on_the_phone_then_imported_again_is_not_a_duplicate ... ok
test tests::review3::bidi_controls_never_reach_a_file_name ... ok
test tests::review3::contact_writes_are_refused_after_shutdown ... ok
test tests::review3::imports_and_photo_cards_count_against_the_storage_limit ... ok
test tests::kill9::rename_killed_prepared ... ok
test tests::review3::undo_of_a_contact_change_is_held_to_the_limit ... ok
test tests::review3::same_size_photo_swaps_are_held_to_the_limit ... ok
test tests::review::both_ends_in_trash_restore_source_before_target_keeps_identity ... ok
test tests::review::concurrent_undo_and_staged_update_keep_note_and_card_together ... ok
test tests::review::crash_child ... ok
test tests::review::device_name_before_extension_is_safe ... ok
test tests::review::import_shared_company_uses_distinguishing_city_and_identical_facts_use_numbers ... ok
test tests::review::kill9_delete_before_progress ... ok
test tests::review::kill9_delete_only_runtime_inverse ... ok
test tests::review3::undoing_an_import_releases_everything_it_kept ... ok
test tests::props::random_sequences_keep_every_invariant ... ok
test tests::related::every_related_link_reaches_the_person_it_names ... ok
test tests::review::kill9_import_after_directory_sync ... ok
test tests::review::kill9_import_after_first_file ... ok
test tests::review::kill9_import_after_history_transaction ... ok
test tests::review::kill9_import_during_file_placement ... ok
test tests::review::kill9_restore_after_incoming_link_repair ... ok
test tests::review::kill9_restore_after_outgoing_link_repair ... ok
test tests::review::kill9_restore_before_incoming_link_repair ... ok
test tests::review::kill9_restore_before_outgoing_link_repair ... ok
test tests::review::kill9_restore_before_progress ... ok
test tests::review::kill9_runtime_inverse ... ok
test tests::review::link_in_trash_follows_rename ... ok
test tests::review::ordinary_tag_job_and_undo_preserve_concurrent_typing ... ok
test tests::review::rename_to_unbalanced_bracket_keeps_a_markdown_link ... ok
test tests::review::replayed_delete_only_runtime_inverse_restores_only_job_edit ... ok
test tests::review::replayed_runtime_inverse_restores_only_job_edit ... ok
test tests::review::restore_does_not_resurrect_a_removed_link_or_retarget_its_identical_replacement ... ok
test tests::review::restore_into_taken_name_preserves_link_identity ... ok
test tests::review::kill9_import_into_existing_folder_after_first_file ... ok
test tests::review::same_company_uses_city ... ok
test tests::review::undo_refuses_a_later_phone_card_before_moving_or_retargeting_anything ... ok
test tests::sweep::the_sweep_drops_cards_of_contacts_gone_for_good ... ok
test tests::sweep::undo_and_deleting_forever_sweep_at_once ... ok
test tests::review::kill9_import_private_files_before_history ... ok
test tests::undo::a_retry_after_a_failed_rename_retries_cleanly_and_never_doubles ... ok
test tests::undo::undo_of_a_rename_takes_the_card_back_with_the_note ... ok
test tests::review::kill9_import_into_existing_folder_after_directory_sync ... ok
test write::tests::keyed_ids_are_stable ... ok
test write::tests::old_titles_cover_name_file_and_clash_forms ... ok
test tests::undo::undo_of_an_import_takes_every_contact_back ... ok
test tests::undo::a_batch_that_fails_part_way_is_undone_completely ... ok
test tests::review::ring_import_1000_swaps_chains_unicode_h1_and_undo ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_core-22753e58953721f1)

running 13 tests
test action::tests::namespace_is_enforced ... ok
test batch::tests::stops_at_the_first_error ... ok
test drain::tests::close_gives_up_after_its_bound ... ok
test drain::tests::close_waits_for_work_already_in_and_refuses_new_work ... ok
test batch::tests::visits_everything_once_in_order ... ok
test error::tests::every_code_has_a_friendly_message ... ok
test journal::tests::junk_tokens_ask_for_a_refresh ... ok
test journal::tests::tokens_round_trip ... ok
test plugin::tests::plugins_stay_in_their_namespace ... ok
test room_queue::tests::budgets_count_bytes_and_release_on_receive_and_drop ... ok
test room_queue::tests::control_messages_can_release_rooms_when_payload_budgets_are_full ... ok
test room_queue::tests::deferred_payload_keeps_local_and_global_byte_admission ... ok
test room_queue::tests::failed_admission_does_not_leak_reservations ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_daily-9c18e279f5ad2cc0)

running 22 tests
test day::tests::midnight_follows_the_device_in_ist ... ok
test day::tests::daylight_saving_uses_the_offset_the_device_sends ... ok
test day::tests::titles_read_like_the_web_app ... ok
test day::tests::names_and_ids ... ok
test tests::bad_input_is_refused_kindly ... ok
test tests::an_existing_day_file_is_reused_whatever_its_id ... ok
test tests::any_text_is_safe_to_read_and_plan ... ok
test tests::close_turns_one_open_entry_into_a_range ... ok
test tests::add_inserts_exactly_one_entry_and_keeps_the_rest ... ok
test tests::log_add_then_close_makes_a_range ... ok
test tests::shared_vectors ... ok
test tests::today_follows_the_device_offset ... ok
test tests::opening_the_same_day_at_once_makes_one_note ... ok
test tests::two_offline_devices_starting_the_same_day_merge_into_one_note ... ok
test times_tests::a_line_with_only_tags_stays_words ... ok
test tests::make_note_on_a_log_line_keeps_times_and_tags ... ok
test times_tests::invalid_spaced_twelve_hour_suffix_stays_a_word_after_a_24_hour_time ... ok
test times_tests::only_a_day_note_has_times ... ok
test times_tests::any_line_is_safe ... ok
test times_tests::trailing_tags_on_any_line ... ok
test times_tests::a_log_line_splits_into_times_words_and_tags ... ok
test tests::no_file_until_the_first_keystroke ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_engine-ff3aa4aa42431a1a)

running 16 tests
test hash::tests::key_order_does_not_matter_but_content_does ... ok
test tests::a_plugin_cannot_write_outside_its_namespace ... ok
test tests::a_retry_runs_once_and_replays_the_result ... ok
test tests::a_huge_job_never_delays_anyone ... ok
test tests::bad_input_and_unknown_actions_are_friendly ... ok
test tests::changes_need_a_key_reads_do_not ... ok
test tests::connected_follows_live_views ... ok
test tests::identical_calls_at_the_same_moment_run_once ... ok
test tests::journal_pages_continue_where_they_stopped ... ok
test tests::a_user_with_a_live_view_or_a_running_action_is_kept ... ok
test tests::perf_huge_job_action_latency ... ignored, action latency budgets run on the perf VM via perf/ordinary-latency-vm.sh
test tests::an_action_that_outlives_shutdown_commits_nothing ... ok
test tests::no_write_is_lost_while_users_are_released_and_reopened ... ok
test tests::shutdown_waits_for_running_actions_and_refuses_new_ones ... ok
test tests::users_never_see_each_other ... ok
test tests::an_idle_user_is_released_and_comes_back_with_nothing_lost ... ok

test result: ok. 15 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.46s

     Running unittests src/lib.rs (target/debug/deps/calternal_fixtures-6f98542429b58355)

running 5 tests
test dates::tests::round_trips_and_formats ... ok
test rng::tests::same_seed_same_numbers ... ok
test tests::same_seed_same_bytes_other_seed_other_bytes ... ok
test tests::looks_like_a_real_home ... ok
test tests::full_gate_has_enough_disjoint_samples ... ok

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

     Running unittests src/main.rs (target/debug/deps/calternal_fixtures-f234eac8403fa749)

running 0 tests

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

     Running unittests src/lib.rs (target/debug/deps/calternal_fsio-ae27743c7f85e128)

running 45 tests
test swap::create_tests::create_preserves_outside_file_appearing_after_absence_check ... ok
test beneath::tests::walking_without_openat2_refuses_symlinks_too ... ok
test beneath::tests::paths_that_climb_out_are_refused ... ok
test beneath::tests::temp_files_persist_without_replacing_and_vanish_when_dropped ... ok
test swap::create_tests::unsupported_exchange_never_replaces_an_existing_file ... ok
test tests::atomic_write_replaces_and_leaves_no_temp_files ... ok
test tests::a_published_directory_retains_ownership_when_a_parent_flush_fails ... ok
test tests::case_only_rename_preserves_a_different_destination ... ok
test tests::case_only_collision_rolls_back_or_keeps_the_staged_original ... ok
test tests::case_only_rename_works_and_other_clashes_are_refused ... ok
test tests::delta_rename_must_preserve_file_arriving_after_absence_check ... ok
test tests::dropping_data_lock_releases_it_even_with_an_inherited_file_handle ... ok
test tests::directory_publication_rechecks_changed_inheritance_policy ... ok
test tests::failed_write_keeps_the_old_file ... ok
test tests::many_files_are_replaced_whole ... ok
test tests::many_new_files_never_replace_anything ... ok
test tests::names_fold_case_and_unicode_form ... ok
test tests::named_bulk_staging_is_whole_exclusive_and_leaves_no_temporary_name ... ok
test tests::only_one_process_owns_a_data_folder ... ok
test tests::prepared_writes_land_only_when_placed ... ok
test tests::private_directory_publication_preserves_a_destination_that_arrives ... ok
test tests::rename_preserves_a_dangling_destination_symlink ... ok
test tests::staged_bulk_keeps_the_destination_default_acl ... ok
test tests::staged_bulk_preserves_occupied_files_and_falls_back_when_staging_is_missing ... ok
test tests::unique_names_skip_case_and_form_clashes ... ok
test tests::write_unless_changed_keeps_someone_elses_version ... ok
test usage::tests::a_separate_state_root_counts_what_plugins_report ... ok
test tests::a_private_directory_is_invisible_until_exclusive_publication ... ok
test usage::tests::directory_move_during_recount_retries_with_relative_paths ... ok
test usage::tests::reads_do_not_wait_for_the_counter_writer ... ok
test usage::tests::recount_preserves_concurrent_writes_and_deletes ... ok
test usage::tests::recount_uses_relative_keys_and_ignores_symlinks ... ok
test tests::parallel_bulk_preserves_result_slots_and_observes_the_final_sync ... ok
test usage::tests::stale_metadata_cannot_replace_a_newer_update ... ok
test usage::tests::writes_moves_trash_and_purge_update_without_a_recount ... ok
test usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames ... FAILED
test usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota ... FAILED
test usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration ... FAILED

running 1 test
test usage::tests::bulk_writes_and_published_folders_count_without_a_recount ... ok
test usage::watch::independent_review_755::abrupt_stop_during_registration_reopens_acknowledged_files ... ok
test usage::watch::independent_review_755::registration_recount_repairs_window_mutations_and_merges_app_writes ... ok
test usage::watch::tests::watcher_registration_never_blocks_startup_or_initial_accounting ... ok
test usage::watch::tests::outside_writes_and_directory_renames_repair_usage ... ok
test usage::watch::tests::deleted_paths_do_not_accumulate_without_periodic_recounts ... ok
test tests::big_writes_arrive_whole ... ok

failures:

---- usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames stdout ----

thread 'usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames' (3116348) panicked at crates/fsio/src/usage/watch.rs:250:9:
assertion `left == right` failed: quota must count native filenames losslessly
  left: 0
 right: 16
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

---- usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota stdout ----

thread 'usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota' (3116349) panicked at crates/fsio/src/usage/watch.rs:292:9:
assertion `left == right` failed: source stays charged and destination stays uncharged
  left: (18, 0)
 right: (0, 11)

---- usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration stdout ----

thread 'usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration' (3116352) panicked at crates/fsio/src/usage/watch.rs:269:9:
assertion `left == right` failed: second admission used a stale initial snapshot
  left: 0
 right: 10


failures:
    usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames
    usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota
    usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration

test result: FAILED. 42 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s

error: test failed, to rerun pass `-p calternal-fsio --lib`
     Running unittests src/lib.rs (target/debug/deps/calternal_memory-3b65467e6e94a530)

running 3 tests
test tests::huge_pages_go_off ... ok
test tests::nested_bursts_defer_automatic_reclamation_and_unwind_releases_them ... ok
test tests::trimming_is_harmless ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_migrate_v0-0307c6ecc045a6ef)

running 37 tests
test tests::rules::dry_run_writes_nothing ... ok
test tests::rules::m1_custom_daily_title_and_heading_stay ... ok
test tests::rules::m10_tz_markers_go_and_other_zones_convert_to_the_notes_zone ... ok
test tests::rules::edited_files_are_never_overwritten_without_asking ... ok
test tests::rules::m1_daily_notes_get_day_names_ids_and_lose_generated_headings ... ok
test tests::rules::m2_attachments_that_exist_are_copied_and_relinked ... ok
test tests::rules::m1_titles_come_from_title_then_h1_then_file_name_and_stay_unique ... ok
test tests::rules::m2_code_is_never_rewritten ... ok
test tests::rules::m2_unresolved_links_stay_as_written_and_are_reported ... ok
test tests::rules::m2_wikilinks_always_become_standard_links ... ok
test tests::rules::m3_m5_frontmatter_keys_drop_and_times_convert ... ok
test tests::rules::m2_links_are_repaired_by_name_date_title_and_slug ... ok
test tests::rules::m5_unreadable_dates_fall_back ... ok
test tests::rules::m4_unreferenced_block_ids_go_and_referenced_ones_stay ... ok
test tests::rules::m6_conflict_copies_are_not_migrated ... ok
test tests::rules::m7_tasks_blocks_are_stripped_and_listed ... ok
test tests::units::every_v0_time_shape_converts ... ok
test tests::units::file_names_give_titles ... ok
test tests::rules::m8_only_notes_and_linked_files_move ... ok
test tests::units::keys_ignore_case_encoding_quotes_and_md ... ok
test tests::units::links_parse_in_every_shape ... ok
test tests::units::unix_times_become_india_time ... ok
test tzmarker::tests::a_conversion_that_leaves_the_day_is_kept_and_reported ... ok
test tzmarker::tests::berlin_converts_inside_the_day ... ok
test tzmarker::tests::code_is_never_touched ... ok
test tzmarker::tests::day_from_a_date_value ... ok
test tzmarker::tests::eu_summer_time_edges ... ok
test tzmarker::tests::marker_at_the_end_or_tight_leaves_no_stray_space ... ok
test tzmarker::tests::no_zone_in_the_note_means_strip_only ... ok
test tzmarker::tests::not_a_marker_is_left_alone ... ok
test tzmarker::tests::same_zone_just_goes ... ok
test tzmarker::tests::second_run_changes_nothing ... ok
test tzmarker::tests::styles_survive_conversion ... ok
test tzmarker::tests::unknown_zone_or_a_non_log_line_is_kept_and_counted ... ok
test write::tests::migration_preserves_files_changed_after_preflight ... ok
test tests::rules::running_twice_gives_the_same_bytes ... ok
test tests::no_new_markers::nothing_writes_a_tz_marker ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_notes-ec259b4b0eee28fd)

running 461 tests
test anchor::tests::lines_by_utf16_index ... ok
test backlinks::tests::snippets_are_the_trimmed_line ... ok
test anchor::tests::hash_is_plain_sha256_hex ... ok
test backlinks::tests::links_are_fold_keys_and_lines ... ok
test blocks::tests::finds_list_children_and_heading_sections ... ok
test blocks::tests::line_edits ... ok
test blocks::tests::shapes_keep_markers ... ok
test blocks::tests::titles_from_the_first_sentence ... ok
test backlinks::writes::tests::replacement_still_works_while_the_source_index_is_dropped ... ok
test backlinks::writes::tests::changed_lines_duplicates_and_corrupt_values_are_replaced ... ok
test backlinks::writes::tests::identical_multisets_do_not_write_even_when_order_changes ... ok
test bulk::undo::tests::inverse_restores_the_text ... ok
test diff::tests::an_inserted_line_starts_at_a_line_start ... ok
test bulk::undo::tests::inverse_roundtrips ... ok
test bulk::error_tests::legacy_job_reports_hide_stored_source_details ... ok
test diff::tests::emoji_positions_are_utf16 ... ok
test diff::tests::small_change_is_a_small_edit ... ok
test file_stamp::tests::each_field_and_path_byte_affects_the_stamp ... ok
test file_stamp::tests::filesystem_metadata_uses_nanoseconds_and_the_exact_relative_path ... ok
test file_stamp::tests::stable_vectors_cover_unicode_and_extreme_scalars ... ok
test frontmatter::tests::h1_skips_code_and_frontmatter ... ok
test frontmatter::tests::quoting ... ok
test frontmatter::tests::reads_keys ... ok
test frontmatter::tests::set_adds_a_line_or_a_block ... ok
test frontmatter::tests::set_changes_only_the_value ... ok
test frontmatter::tests::set_is_utf16_aware ... ok
test health::tests::anchors ... ok
test bulk::error_tests::failed_job_reports_keep_source_details_in_the_server_error ... ok
test history::blobs::tests::photo_chunks_preserve_folding_unknown_fields_and_line_endings ... ok
test diff::tests::edits_never_split_a_character ... ok
test diff::tests::edits_turn_old_into_new ... ok
test history::companions::import_cache_tests::prepared_companions_are_applied_on_insert_or_roll_back_with_the_plan ... ok
test history::companions::migration_tests::old_staging_allocation_order_migrates_to_application_order ... ok
test history::companions::import_cache_tests::import_cache_budget_returns_after_success_and_failure ... ok
test history::companions::tests::a_companion_lands_with_its_change ... ok
test history::companions::tests::retained_bytes_follow_every_change_and_match_a_full_count ... ok
test history::companions::tests::rejected_companion_writes_leave_history_and_quota_unchanged ... ok
test history::companions::tests::keys_answer_without_reading_bytes_and_cover_older_rows ... ok
test history::companions::tests::staged_rows_wait_for_their_step ... ok
test history::companions::tests::written_marks_and_unwritten_rows ... ok
test history::tests::a_busy_begin_reports_its_cause_without_running_the_job ... ok
test history::memory_tests::batch_admission_failure_dooms_its_lane_before_a_later_write ... ok
test history::tests::a_failed_commit_never_replies_with_a_successful_statement_result ... ok
test history::tests::a_failed_statement_rolls_back_and_reports_the_cause_to_the_whole_group ... ok
test history::tests::a_competing_writer_cannot_invalidate_a_history_write_snapshot ... ok
test history::memory_tests::history_payload_bytes_are_bounded_per_home_and_globally_until_completion ... ok
test history::tests::appends_are_ordered_and_readable ... ok
test history::tests::background_save_bookkeeping_shares_edits_without_early_receipts ... ok
test history::tests::pending_save_promotes_to_base ... ok
test index::snapshot_tests::bounded_snapshots_keep_owned_rows_across_holes_and_slot_reuse ... ok
test index::tests::a_shared_path_answers_with_the_newest_note ... ok
test history::tests::disk_full_keeps_the_cause_and_failed_writes_can_be_retried ... ok
test index::tests::a_torn_tail_cannot_swallow_the_next_durable_mapping ... ok
test index::tests::compacts_when_it_grows ... ok
test home::background_task_tests::finished_background_tasks_are_reaped_during_normal_operation ... ok
test index::tests::imported_mappings_share_one_log_append_and_survive_reload ... ok
test index::tests::reload_speed ... ignored
test index::tests::survives_reload_renames_and_torn_lines ... ok
test index::tests::under_finds_exact_paths_and_descendants_with_folded_names ... ok
test index::tests::under_keeps_shadowed_paths_for_watcher_removal ... ok
test index::tests::unloads_and_reloads ... ok
test links::escaped_labels::generated_labels_round_trip_and_custom_markup_survives_retargeting ... ok
test history::blobs::tests::fifty_two_weekly_edits_share_the_unchanged_original_photo ... ok
test links::tests::finds_standard_and_old_style_links ... ok
test links::tests::frontmatter_code_samples_do_not_hide_body_links ... ok
test links::tests::longer_backtick_fence_does_not_close_on_three_ticks ... ok
test links::tests::nested_brackets_in_text ... ok
test links::tests::nested_fences_and_indented_code_follow_commonmark_boundaries ... ok
test links::tests::normal_fence_control_keeps_links_after_the_block ... ok
test links::tests::relative_paths ... ok
test links::tests::resolves_relative_to_the_linking_note ... ok
test links::tests::retarget_follows_the_title_and_keeps_custom_text ... ok
test links::tests::retarget_from_a_subfolder ... ok
test links::tests::retarget_matches_case_and_unicode_forms ... ok
test links::tests::skips_code_images_and_the_web ... ok
test links::tests::tilde_fence_does_not_close_on_trailing_text ... ok
test links::tests::unclosed_fence_hides_links_through_eof ... ok
test meta::descriptions::tests::a_failed_fresh_plugin_batch_rolls_back_its_note_rows_too ... ok
test index::tests::directory_counts_match_full_scan_after_moves_and_reload ... ok
test meta::fields::tests::cache_upgrade_resets_counts_and_link_rows_and_keeps_note_keys_stable ... ok
test meta::fields::tests::stamp_only_changes_keep_sort_fields_and_tags_but_refresh_links ... ok
test meta::scan::tests::a_prepared_scan_cannot_replace_a_later_announced_live_pin ... ok
test meta::scan::tests::an_identity_returning_after_selection_keeps_its_list_row ... ok
test index::tests::answers_like_plain_maps ... ok
test meta::scan::tests::stamp_walk_preserves_sparse_and_extreme_keys ... ok
test meta::tests::cursors_round_trip_and_reject_junk ... ok
test meta::tests::snippets_skip_frontmatter_and_headings ... ok
test missing::targets::tests::a_name_is_the_file_without_its_folder_and_extension ... ok
test missing::targets::tests::names_rank_exact_then_prefix_then_word_then_inside ... ok
test naming::tests::what_fits_and_what_to_try ... ok
test props::tests::adds_removes_and_quotes_links ... ok
test props::tests::already_typed_text_lists_keep_their_comments_and_quotes ... ok
test props::tests::changes_only_the_touched_key ... ok
test props::tests::list_items_are_written_as_text_too ... ok
test props::tests::obsidian_written_yaml_reads ... ok
test meta::tests::fresh_fill_restores_checkpointing_after_success_and_failure ... ok
test props::tests::outside_keys_win_whole_and_unrelated_pending_keys_survive ... ok
test props::tests::quoting_round_trips_tricky_text ... ok
test props::tests::reads_every_list_form ... ok
test props::tests::refuses_what_it_cannot_read ... ok
test props::tests::review_malformed_unrelated_property_blocks_writes ... ok
test props::tests::review_property_case_override_is_honored ... ok
test props::tests::review_text_yaml_types ... ok
test props::tests::scalar_writes_preserve_types_in_both_directions ... ok
test props::tests::selected_display_keys_keep_unrelated_errors_and_source_order ... ok
test props::tests::simple_display_large_numeric_scalars_agree_with_yaml ... ok
test props::tests::simple_display_mapping_is_a_subset_of_valid_yaml ... ok
test props::tests::simple_display_mapping_keeps_full_validation_for_other_yaml ... ok
test props::tests::simple_display_scalars_agree_with_the_yaml_validator ... ok
test props::tests::unicode_display_scalars_agree_with_yaml ... ok
test rename::tests::clash_numbers ... ok
test rename::tests::daily_names ... ok
test rename::tests::h1_is_set_or_added ... ok
test room::acks::tests::varuints_round_trip ... ok
test room::actor::retry_tests::malformed_update_remains_a_permanent_refusal ... ok
test room::actor::retry_tests::retry_budget_failure_requests_rejoin_without_permanent_refusal ... ok
test room::edit::tests::checks_bounds_overlap_and_surrogates ... ok
test room::pipeline::memory_tests::actor_api_payload_remains_byte_bounded_when_deferred ... ok
test room::pipeline::memory_tests::global_retry_bytes_refuse_before_mutation_and_release_after_commit ... ok
test meta::descriptions::tests::common_tag_totals_keep_plugin_visibility_filters_and_cursor_scope ... ok
test room::pipeline::memory_tests::parked_cross_writer_input_is_journaled_before_its_dependency_releases_it ... ok
test room::pipeline::memory_tests::server_and_outside_updates_are_admitted_before_live_mutation ... ok
test room::pipeline::memory_tests::per_room_retry_bytes_apply_backpressure_before_another_update ... ok
test room::save::tests::concurrent_typists_and_saves_converge ... ok
test room::save::tests::kill_nine_mid_save_recovers_title_and_bytes ... ok
test room::save::tests::review::failed_history_outside_edit_cannot_be_acknowledged_before_recovery ... ok
test room::save::tests::review::failed_history_server_edit_cannot_be_acknowledged_before_recovery ... ok
test room::save::tests::review::group_commit::a_parked_step_two_does_not_answer_save_checks ... ok
test room::save::tests::review::group_commit::a_peer_joining_mid_retry_and_typing_is_saved_once_durable ... ok
test room::save::tests::review::group_commit::a_retried_api_edit_sends_its_changed_event ... ok
test room::save::tests::review::group_commit::an_incomplete_step_two_cannot_release_held_save_checks ... ok
test room::save::tests::review::group_commit::edits_typed_during_a_write_commit_together ... ok
test room::save::tests::review::group_commit::a_failed_write_is_never_overtaken ... ok
test room::save::tests::review::group_commit::lanes::checks_after_each_edit_stay_bounded_per_connection ... ok
test room::save::tests::review::group_commit::lanes::doomed_lanes_do_not_roll_back_others ... ok
test room::save::tests::review::group_commit::lanes::mid_batch_failure_with_other_note_typing ... ok
test room::save::tests::review::group_commit::mixed_paths_keep_applied_order_through_retry ... ok
test room::save::tests::review::group_commit::perf_save_checks_under_twenty_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test room::save::tests::review::group_commit::save_checks_during_an_outage_stay_bounded ... ok
test room::save::tests::review::group_commit::saved_arrives_after_storage_recovers_without_new_activity ... ok
test room::save::tests::review::group_commit::two_notes_keep_their_own_order ... ok
test links::tests::code_block_spans_match_pulldown_on_random_markdown ... ok
test room::save::tests::review::history_durability::independent_652_failed_first_typed_edit_must_precede_second ... ok
test room::save::tests::review::history_durability::independent_652_disk_full_mid_burst_then_recovery ... ok
test room::save::tests::review::history_durability::independent_652_queued_api_requires_replay_after_kill9 ... ok
test room::save::tests::review::history_durability::independent_652_queued_crash_child ... ok
test room::save::tests::review::history_durability::independent_652_real_syncclient_joining_snapshot_is_not_saved ... ok
test room::save::tests::review::history_durability::independent_652_real_syncclient_peers_and_restart_replay ... ok
test room::save::tests::review::history_durability::metadata_refresh_does_not_block_sync_behind_an_uncommitted_seed ... ok
test room::save::tests::review::history_durability::perf_outage_checks_under_two_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test room::save::tests::review::history_durability::retained_failed_edits_keep_the_file_and_list_cache_dirty ... ok
test room::save::tests::review::review_acknowledged_save_child ... ok
test room::save::tests::review::review_delete_set_before_insert_and_trailing_format_marks ... ok
test room::save::tests::review::history_durability::independent_652_outage_queue_and_save_checks ... ok
test room::save::tests::review::review_failed_save_retry_and_outside_retry_keep_base_cache ... ok
test room::save::tests::review::review_kill_nine_after_save_reply_preserves_exact_file_history_and_version ... ok
test props::tests::only_intended_keys_change ... ok
test room::save::tests::review::slow_disk::slow_disk_long ... ignored, measurement for the perf VM, not a gate
test room::save::tests::review::slow_disk::slow_disk_matrix ... ignored, measurement for the perf VM, not a gate
test room::save::tests::save_kill_child ... ok
test room::save::tests::saved_bytes_and_titles_match_the_old_copy_path ... ok
test room::save::tests::title_sync_does_not_decode_the_saved_document ... ok
test scan::classify::tests::folded_aliases_are_changed_without_becoming_vanished ... ok
test scan::state::alias_test::a_cache_alias_is_replaced_without_appending_to_its_target ... ok
test scan::state::tests::a_torn_tail_is_ignored_then_removed_before_append ... ok
test scan::state::tests::appended_edits_deletions_and_compaction_keep_the_snapshot ... ok
test scan::tests::day_ids_name_their_files ... ok
test scan::tests::state_round_trips_and_skips_odd_names ... ok
test scan::tests::unchanged_scan_keeps_state_file_and_changed_scan_appends ... ok
test search::tests::a_note_becomes_a_document ... ok
test search::tests::plain_search_lines_borrow_their_text ... ok
test search::tests::search_lines_keep_link_text_and_replacement_order ... ok
test search::tests::titles_fall_back_to_the_file_name ... ok
test smartline::tests::a_plain_line ... ok
test smartline::tests::only_tags_are_words ... ok
test smartline::tests::trailing_tags_only ... ok
test stamp::tests::formats_with_offset ... ok
test storage_crash::kill9_after_ack_during_split_hdd_save_recovers_exact_text ... ok
test storage_crash::storage_child ... ok
test tags::front::tests::every_way_of_writing_tags ... ok
test tags::merge::tests::property_tags_go_with_their_comma_or_line ... ok
test tags::merge::tests::text_tags_go_with_one_space ... ok
test tags::rewrite::tests::merging_keeps_every_tag_once_at_most ... ok
test tags::rewrite::tests::nothing_to_do_is_no_edits ... ok
test tags::rewrite::tests::only_real_tags_change ... ok
test tags::rewrite::tests::positions_count_utf16 ... ok
test tags::rewrite::tests::properties_change_name_only ... ok
test tags::rewrite::tests::rename_and_back_is_the_same_text ... ok
test tags::rewrite::tests::renames_tags_and_nested_tags_only ... ok
test tags::rewrite::tests::renaming_onto_an_existing_tag_merges ... ok
test tags::rewrite::tests::words_code_links_and_headings ... ok
test tags::scan::tests::code_is_never_tags ... ok
test tags::scan::tests::hash_free_lines_still_open_and_close_code_fences ... ok
test tags::scan::tests::headings_and_quotes_keep_their_tags ... ok
test tags::scan::tests::link_targets_and_addresses_are_never_tags ... ok
test tags::scan::tests::not_tags ... ok
test tags::scan::tests::plain_tags ... ok
test tags::tests::nesting_and_cleaning ... ok
test tags::tests::properties_and_text ... ok
test tests::acks::an_older_lineage_is_refused_before_anything_is_sent ... ok
test tests::acks::checks_advance_in_order_and_cover_every_earlier_edit ... ok
test tests::acks::lineage_survives_a_restart ... ok
test tests::acks::saved_means_the_change_is_in_history ... ok
test tests::anchors::an_anchor_follows_its_block_when_lines_shift ... ok
test tests::anchors::an_edited_block_is_refused_never_the_wrong_one ... ok
test tests::anchors::anchors_need_a_hash_and_block_ids_work ... ok
test tests::anchors::history_folds_typing_and_names_jobs ... ok
test room::save::tests::review::review_title_precedence_edge_matrix ... ok
test tests::appends::an_append_to_a_long_note_stays_small ... ok
test tests::anchors::shifting_lines_never_move_the_wrong_block ... ok
test tests::appends::appends_built_directly_match_the_copy_byte_for_byte ... ok
test tests::appends_review::delete_whole_tail_then_append_matches ... ok
test tests::appends_review::frontmatter_map_write_falls_back ... ok
test tests::appends::typists_and_appends_interleave_on_one_note ... ok
test tests::appends_review::trailing_format_marker_bytes ... ok
test tests::delta_review::deleting_preserves_an_occupied_trash_destination ... ok
test tests::delta_review::delta_independent_same_id_create_retries_joined_must_not_panic ... ok
test tests::delta_review::delta_permanent_deletion_history_failure_must_terminate_scan ... ok
test tests::delta_review::placement_review_bulk_create_cannot_adopt_an_outside_file ... ok
test tests::delta_review::placement_review_bulk_create_retry_keeps_original_version_for_undo ... ok
test tests::delta_review::placement_review_planned_rename_conflict_keeps_links_unchanged ... ok
test tests::delta_review::placement_review_rename_retargets_links_to_the_actual_suffix ... ok
test tests::delta_review::placement_review_undo_rename_conflict_keeps_links_at_the_live_note ... ok
test tests::delta_review::rename_uses_a_suffix_for_an_unindexed_destination ... ok
test tests::delta_review::same_id_sibling_creates_with_different_text_conflict ... ok
test tests::event_visibility::a_failed_list_commit_cannot_announce_a_pin ... ok
test tests::event_visibility::a_scan_cannot_replace_an_announced_live_pin_with_the_old_file ... ok
test tests::appends_review::fuzz_deletes_restarts_parked ... ok
test room::save::tests::review::group_commit::lanes::a_failing_note_does_not_starve_another_typist ... ok
test tests::event_visibility::create ... ok
test tests::event_visibility::create_text ... ok
test tests::event_visibility::delete ... ok
test tests::event_visibility::edit ... ok
test tests::event_visibility::edit_title ... ok
test tests::event_visibility::edit_title_property ... ok
test tests::event_visibility::failed_delete_then_restore_announces_the_current_state ... ok
test tests::event_visibility::move_note ... ok
test tests::event_visibility::outside_create ... ok
test tests::event_visibility::outside_delete ... ok
test tests::event_visibility::outside_edit ... ok
test tests::event_visibility::outside_edit_closed ... ok
test tests::event_visibility::outside_rename ... ok
test tests::event_visibility::regression_backup_discovery_cannot_reuse_a_forgotten_id ... ok
test tests::event_visibility::regression_create_retry_after_restart_uses_file_without_intent ... ok
test tests::event_visibility::regression_create_retry_conflicts_with_different_file_text ... ok
test tests::event_visibility::regression_create_retry_normalizes_server_keys_consistently ... ok
test tests::event_visibility::regression_create_retry_with_crlf_and_bom_keeps_bytes ... ok
test tests::event_visibility::regression_create_with_text_still_renames_after_its_h1 ... ok
test tests::event_visibility::regression_create_with_text_writes_only_managed_frontmatter ... ok
test tests::event_visibility::regression_delayed_depart_cannot_clear_gone ... ok
test tests::event_visibility::outside_rename_closed ... ok
test tests::event_visibility::regression_failed_create_cannot_resurrect_forgotten_id ... ok
test tests::event_visibility::regression_failed_initial_file_write_can_retry ... ok
test tests::event_visibility::regression_failed_save_hint_still_schedules_title_rename ... ok
test tests::event_visibility::regression_failed_unsaved_edit_restart_reconciles_from_journal ... ok
test tests::event_visibility::regression_forgotten_id_stays_gone_after_path_reuse_and_restart ... ok
test tests::event_visibility::pin ... ok
test tests::event_visibility::regression_initial_file_precedes_visible_identity ... ok
test tests::event_visibility::regression_kill_after_outside_commit_repairs_list_on_start ... ok
test tests::event_visibility::regression_outside_commit_child ... ok
test tests::event_visibility::regression_purge_commits_path_state_before_unlink_or_event ... ok
test tests::event_visibility::regression_delete_failure_then_forget_keeps_gone ... ok
test tests::event_visibility::rename_public_retry ... ok
test tests::event_visibility::rename_retry ... ok
test tests::event_visibility::regression_one_reconcile_path_after_failed_edit ... ok
test tests::event_visibility::restore_retry_repairs_a_missing_list_row_for_an_open_room ... ok
test tests::event_visibility::review_create_retry_preserves_initial_text_explicit_id ... ok
test tests::event_visibility::review_create_retry_preserves_initial_text_key_id ... ok
test tests::event_visibility::review_create_retry_without_key_preserves_initial_text_once ... ok
test tests::event_visibility::review_discovery_publication_retries_after_metadata_failure ... ok
test tests::event_visibility::review_load_event_recovers_after_meta_failure ... ok
test tests::event_visibility::review_restore_event_recovers_after_meta_failure ... ok
test tests::event_visibility::review_restore_publication_survives_home_restart ... ok
test tests::event_visibility::round4_create_retry_does_not_wait_for_scan_under_lifecycle ... ok
test tests::event_visibility::round4_daily_create_retry_does_not_reenter_lifecycle ... ok
test tests::event_visibility::rename ... ok
test room::save::tests::review::review_fuzz_old_new_bytes_history_versions_and_restarts ... ok
test tests::event_visibility::round4_startup_retries_failed_list_stamp_read ... ok
test tests::event_visibility::restore ... ok
test tests::event_visibility::round4_startup_retries_journal_discovery_before_file_rows ... ok
test tests::event_visibility::save_background_retry ... ok
test tests::event_visibility::round4_unreadable_note_does_not_block_healthy_repair_or_ack ... ok
test tests::event_visibility::save_retry ... ok
test tests::event_visibility::saved_list_fields_keep_file_date_fallback_current ... ok
test tests::event_visibility::saved_list_fields_rebuild_after_eviction_and_follow_later_edits ... ok
test tests::event_visibility::saved_rows_keep_file_stamps_for_warm_scans ... ok
test tests::event_visibility::saved_stamp_describes_our_write_before_a_later_outside_write ... ok
test tests::event_visibility::startup_scan_events_are_listed_before_the_scan_finishes ... ok
test tests::event_visibility::save ... ok
test tests::event_visibility::unread_external_bytes_do_not_get_a_clean_stamp ... ok
test tests::fanout::a_crash_before_the_seed_is_durable_never_doubles_text ... ok
test tests::fanout::a_crash_between_fan_out_and_disk_loses_nothing ... ok
test tests::fanout::a_first_open_does_not_wait_for_the_disk ... ok
test tests::fanout::a_version_always_matches_its_text ... ok
test tests::fanout::bursts_converge_and_reach_history ... ok
test tests::fanout::collaborators_see_typing_before_the_disk ... ok
test tests::fresh::a_note_made_with_text_opens_with_its_frontmatter ... ok
test tests::held::a_held_note_answers_before_its_file_and_writes_it_after ... ok
test tests::held::a_lost_identity_whose_path_was_taken_uses_the_plugins_naming_order ... ok
test tests::held::a_synced_first_file_with_a_lost_index_keeps_its_original_path ... ok
test tests::event_visibility::unpin ... ok
test tests::held::identity_without_history_is_dropped_on_the_next_start ... ok
test tests::kill9::child ... ok
test tests::held::history_without_identity_comes_back_on_the_next_start ... ok
test tests::kill9::delete_killed_after_its_answer_finishes_once ... ok
test tests::kill9::permanent_delete_after_restore_cannot_delete_the_live_note ... ok
test tests::kill9::quick_delete_restore_survives_kill ... ok
test tests::kill9::quick_restore_delete_survives_kill ... ok
test tests::kill9::restore_delete_forget_does_not_resurrect_after_kill ... ok
test tests::kill9::restore_killed_after_its_answer_finishes_once ... ok
test tests::listing::a_common_tag_pages_the_same_in_every_order ... ok
test tests::listing::filters_by_tag_kind_and_created_range ... ok
test tests::listing::pages_cover_every_note_once_in_a_stable_order ... ok
test tests::listing::pinning_shows_in_the_list_and_unpinning_leaves_no_trace ... ok
test tests::listing::the_first_page_never_waits_for_the_home_to_open ... ok
test tests::event_visibility::round4_recorder_outage_bounds_deleted_ids_and_drains_overflow ... ok
test tests::listing::the_list_stays_live_with_new_notes_saves_and_outside_edits ... ok
test tests::listing::the_kept_count_follows_adds_and_deletes ... ok
test tests::missing::a_path_tells_here_trash_and_gone ... ok
test tests::missing::a_rename_in_the_app_leaves_the_old_path_moved ... ok
test tests::missing::make_from_link_makes_the_note_where_the_link_points_and_undo_takes_it_back ... ok
test tests::missing::never_made_targets_are_offered_with_their_capitals_and_link_counts ... ok
test tests::missing::never_written_paths_are_new_and_bad_ones_too ... ok
test tests::missing::a_move_outside_is_found_and_relink_repoints_the_links ... ok
test tests::missing::notes_in_the_trash_from_before_are_found ... ok

Gate output verbatim. Command: `cargo test -j3 --workspace --no-fail-fast`. Exit: 101. Final tests branch head: edba00ec64f3afe5780caade7637cb4ffed5cffa. The full run was at 108a711b; the only later change is one test-only lint allowance for an intentional outside-program write. No test behavior changed. Part 2/3. ```text test tests::break_links::rename_while_another_client_edits_a_linking_note ... ok test tests::break_links::swapping_two_names ... ok test tests::break_links::the_checker_finds_dangling_links ... ok test tests::break_links::nfc_and_nfd_names ... ok test tests::break_links::the_title_never_renames_a_contact_file ... ok test tests::break_names::a_name_an_existing_note_has ... ok test tests::break_names::names_differing_only_in_case_are_one_name ... ok test tests::break_names::the_folder_is_a_setting ... ok test tests::break_names::unsafe_characters_never_reach_the_file_name ... ok test tests::break_names::clashes_add_company_then_city_then_nickname_then_domain_then_a_number ... ok test tests::correctness::acknowledged_edit_between_undo_preparation_and_deletion_survives ... ok test tests::break_names::empty_and_emoji_names ... ok test tests::correctness::crash_after_unlink_finishes_history_and_quota_on_restart ... ok test tests::correctness::deletion_crash_child ... ok test tests::break_names::very_long_names_fit_the_byte_limit ... ok test tests::correctness::deletion_recovery_preserves_an_outside_edit_made_while_down ... ok test tests::env::fixture_releases_its_engine_and_stores ... ok test tests::env::pause_markers_accept_serial_and_parallel_child_harness_output ... ok test tests::correctness::failed_partial_import_releases_every_prepared_card_exactly ... ok test tests::correctness::bounded_shutdown_joins_the_card_write_and_refuses_later_copies ... ok test tests::import::an_import_makes_every_new_contact_in_one_job ... ok test tests::import::bulk_import_preserves_an_id_held_only_by_trash_details ... ok test tests::import::a_final_flush_failure_undoes_every_published_contact_and_can_retry ... ok test tests::import::a_final_flush_failure_in_an_existing_folder_preserves_earlier_contacts ... ok test tests::import::limits_hold ... ok test tests::kill9::child ... ok test tests::import::the_same_file_twice_changes_nothing ... ok test tests::import::parallel_import_keeps_input_order_and_compares_existing_peer_facts ... ok test tests::kill9::create_killed_prepared ... ok test tests::break_links::five_thousand_links_across_a_thousand_notes ... ok test tests::kill9::create_killed_committed ... ok test tests::kill9::create_killed_copying ... ok test tests::kill9::edit_killed_committed ... ok test tests::kill9::import_killed_committed ... ok test tests::kill9::import_killed_copying ... ok test tests::kill9::edit_killed_copying ... ok test tests::kill9::import_killed_planned ... ok test tests::kill9::import_killed_mid_import ... ok test tests::kill9::import_killed_prepared ... ok test tests::kill9::edit_killed_prepared ... ok test tests::kill9::rename_killed_mid_rename ... ok test tests::kill9::rename_killed_committed ... ok test tests::kill9::rename_killed_copying ... ok test tests::kill9::rename_killed_planned ... ok test tests::naming::restoring_into_a_taken_name_uses_the_contacts_rule ... ok test tests::naming::an_h1_typed_in_the_app_renames_by_the_contacts_rule ... ok test tests::related::an_unchanged_phone_resend_changes_nothing ... ok test tests::related::a_related_namesake_in_the_same_import_wins_over_the_book ... ok test tests::related::create_and_update_link_one_person_and_leave_namesakes_plain ... ok test tests::related::related_names_from_one_import_link_to_the_files_made ... ok test tests::review3::a_card_saved_with_a_byte_order_mark_is_read ... ok test tests::review3::a_uidless_card_edited_on_the_phone_then_imported_again_is_not_a_duplicate ... ok test tests::review3::bidi_controls_never_reach_a_file_name ... ok test tests::review3::contact_writes_are_refused_after_shutdown ... ok test tests::review3::imports_and_photo_cards_count_against_the_storage_limit ... ok test tests::kill9::rename_killed_prepared ... ok test tests::review3::undo_of_a_contact_change_is_held_to_the_limit ... ok test tests::review3::same_size_photo_swaps_are_held_to_the_limit ... ok test tests::review::both_ends_in_trash_restore_source_before_target_keeps_identity ... ok test tests::review::concurrent_undo_and_staged_update_keep_note_and_card_together ... ok test tests::review::crash_child ... ok test tests::review::device_name_before_extension_is_safe ... ok test tests::review::import_shared_company_uses_distinguishing_city_and_identical_facts_use_numbers ... ok test tests::review::kill9_delete_before_progress ... ok test tests::review::kill9_delete_only_runtime_inverse ... ok test tests::review3::undoing_an_import_releases_everything_it_kept ... ok test tests::props::random_sequences_keep_every_invariant ... ok test tests::related::every_related_link_reaches_the_person_it_names ... ok test tests::review::kill9_import_after_directory_sync ... ok test tests::review::kill9_import_after_first_file ... ok test tests::review::kill9_import_after_history_transaction ... ok test tests::review::kill9_import_during_file_placement ... ok test tests::review::kill9_restore_after_incoming_link_repair ... ok test tests::review::kill9_restore_after_outgoing_link_repair ... ok test tests::review::kill9_restore_before_incoming_link_repair ... ok test tests::review::kill9_restore_before_outgoing_link_repair ... ok test tests::review::kill9_restore_before_progress ... ok test tests::review::kill9_runtime_inverse ... ok test tests::review::link_in_trash_follows_rename ... ok test tests::review::ordinary_tag_job_and_undo_preserve_concurrent_typing ... ok test tests::review::rename_to_unbalanced_bracket_keeps_a_markdown_link ... ok test tests::review::replayed_delete_only_runtime_inverse_restores_only_job_edit ... ok test tests::review::replayed_runtime_inverse_restores_only_job_edit ... ok test tests::review::restore_does_not_resurrect_a_removed_link_or_retarget_its_identical_replacement ... ok test tests::review::restore_into_taken_name_preserves_link_identity ... ok test tests::review::kill9_import_into_existing_folder_after_first_file ... ok test tests::review::same_company_uses_city ... ok test tests::review::undo_refuses_a_later_phone_card_before_moving_or_retargeting_anything ... ok test tests::sweep::the_sweep_drops_cards_of_contacts_gone_for_good ... ok test tests::sweep::undo_and_deleting_forever_sweep_at_once ... ok test tests::review::kill9_import_private_files_before_history ... ok test tests::undo::a_retry_after_a_failed_rename_retries_cleanly_and_never_doubles ... ok test tests::undo::undo_of_a_rename_takes_the_card_back_with_the_note ... ok test tests::review::kill9_import_into_existing_folder_after_directory_sync ... ok test write::tests::keyed_ids_are_stable ... ok test write::tests::old_titles_cover_name_file_and_clash_forms ... ok test tests::undo::undo_of_an_import_takes_every_contact_back ... ok test tests::undo::a_batch_that_fails_part_way_is_undone_completely ... ok test tests::review::ring_import_1000_swaps_chains_unicode_h1_and_undo ... ok test result: ok. 130 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 37.02s Running unittests src/lib.rs (target/debug/deps/calternal_core-22753e58953721f1) running 13 tests test action::tests::namespace_is_enforced ... ok test batch::tests::stops_at_the_first_error ... ok test drain::tests::close_gives_up_after_its_bound ... ok test drain::tests::close_waits_for_work_already_in_and_refuses_new_work ... ok test batch::tests::visits_everything_once_in_order ... ok test error::tests::every_code_has_a_friendly_message ... ok test journal::tests::junk_tokens_ask_for_a_refresh ... ok test journal::tests::tokens_round_trip ... ok test plugin::tests::plugins_stay_in_their_namespace ... ok test room_queue::tests::budgets_count_bytes_and_release_on_receive_and_drop ... ok test room_queue::tests::control_messages_can_release_rooms_when_payload_budgets_are_full ... ok test room_queue::tests::deferred_payload_keeps_local_and_global_byte_admission ... ok test room_queue::tests::failed_admission_does_not_leak_reservations ... ok test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_daily-9c18e279f5ad2cc0) running 22 tests test day::tests::midnight_follows_the_device_in_ist ... ok test day::tests::daylight_saving_uses_the_offset_the_device_sends ... ok test day::tests::titles_read_like_the_web_app ... ok test day::tests::names_and_ids ... ok test tests::bad_input_is_refused_kindly ... ok test tests::an_existing_day_file_is_reused_whatever_its_id ... ok test tests::any_text_is_safe_to_read_and_plan ... ok test tests::close_turns_one_open_entry_into_a_range ... ok test tests::add_inserts_exactly_one_entry_and_keeps_the_rest ... ok test tests::log_add_then_close_makes_a_range ... ok test tests::shared_vectors ... ok test tests::today_follows_the_device_offset ... ok test tests::opening_the_same_day_at_once_makes_one_note ... ok test tests::two_offline_devices_starting_the_same_day_merge_into_one_note ... ok test times_tests::a_line_with_only_tags_stays_words ... ok test tests::make_note_on_a_log_line_keeps_times_and_tags ... ok test times_tests::invalid_spaced_twelve_hour_suffix_stays_a_word_after_a_24_hour_time ... ok test times_tests::only_a_day_note_has_times ... ok test times_tests::any_line_is_safe ... ok test times_tests::trailing_tags_on_any_line ... ok test times_tests::a_log_line_splits_into_times_words_and_tags ... ok test tests::no_file_until_the_first_keystroke ... ok test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.42s Running unittests src/lib.rs (target/debug/deps/calternal_engine-ff3aa4aa42431a1a) running 16 tests test hash::tests::key_order_does_not_matter_but_content_does ... ok test tests::a_plugin_cannot_write_outside_its_namespace ... ok test tests::a_retry_runs_once_and_replays_the_result ... ok test tests::a_huge_job_never_delays_anyone ... ok test tests::bad_input_and_unknown_actions_are_friendly ... ok test tests::changes_need_a_key_reads_do_not ... ok test tests::connected_follows_live_views ... ok test tests::identical_calls_at_the_same_moment_run_once ... ok test tests::journal_pages_continue_where_they_stopped ... ok test tests::a_user_with_a_live_view_or_a_running_action_is_kept ... ok test tests::perf_huge_job_action_latency ... ignored, action latency budgets run on the perf VM via perf/ordinary-latency-vm.sh test tests::an_action_that_outlives_shutdown_commits_nothing ... ok test tests::no_write_is_lost_while_users_are_released_and_reopened ... ok test tests::shutdown_waits_for_running_actions_and_refuses_new_ones ... ok test tests::users_never_see_each_other ... ok test tests::an_idle_user_is_released_and_comes_back_with_nothing_lost ... ok test result: ok. 15 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.46s Running unittests src/lib.rs (target/debug/deps/calternal_fixtures-6f98542429b58355) running 5 tests test dates::tests::round_trips_and_formats ... ok test rng::tests::same_seed_same_numbers ... ok test tests::same_seed_same_bytes_other_seed_other_bytes ... ok test tests::looks_like_a_real_home ... ok test tests::full_gate_has_enough_disjoint_samples ... ok test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.99s Running unittests src/main.rs (target/debug/deps/calternal_fixtures-f234eac8403fa749) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_fsio-ae27743c7f85e128) running 45 tests test swap::create_tests::create_preserves_outside_file_appearing_after_absence_check ... ok test beneath::tests::walking_without_openat2_refuses_symlinks_too ... ok test beneath::tests::paths_that_climb_out_are_refused ... ok test beneath::tests::temp_files_persist_without_replacing_and_vanish_when_dropped ... ok test swap::create_tests::unsupported_exchange_never_replaces_an_existing_file ... ok test tests::atomic_write_replaces_and_leaves_no_temp_files ... ok test tests::a_published_directory_retains_ownership_when_a_parent_flush_fails ... ok test tests::case_only_rename_preserves_a_different_destination ... ok test tests::case_only_collision_rolls_back_or_keeps_the_staged_original ... ok test tests::case_only_rename_works_and_other_clashes_are_refused ... ok test tests::delta_rename_must_preserve_file_arriving_after_absence_check ... ok test tests::dropping_data_lock_releases_it_even_with_an_inherited_file_handle ... ok test tests::directory_publication_rechecks_changed_inheritance_policy ... ok test tests::failed_write_keeps_the_old_file ... ok test tests::many_files_are_replaced_whole ... ok test tests::many_new_files_never_replace_anything ... ok test tests::names_fold_case_and_unicode_form ... ok test tests::named_bulk_staging_is_whole_exclusive_and_leaves_no_temporary_name ... ok test tests::only_one_process_owns_a_data_folder ... ok test tests::prepared_writes_land_only_when_placed ... ok test tests::private_directory_publication_preserves_a_destination_that_arrives ... ok test tests::rename_preserves_a_dangling_destination_symlink ... ok test tests::staged_bulk_keeps_the_destination_default_acl ... ok test tests::staged_bulk_preserves_occupied_files_and_falls_back_when_staging_is_missing ... ok test tests::unique_names_skip_case_and_form_clashes ... ok test tests::write_unless_changed_keeps_someone_elses_version ... ok test usage::tests::a_separate_state_root_counts_what_plugins_report ... ok test tests::a_private_directory_is_invisible_until_exclusive_publication ... ok test usage::tests::directory_move_during_recount_retries_with_relative_paths ... ok test usage::tests::reads_do_not_wait_for_the_counter_writer ... ok test usage::tests::recount_preserves_concurrent_writes_and_deletes ... ok test usage::tests::recount_uses_relative_keys_and_ignores_symlinks ... ok test tests::parallel_bulk_preserves_result_slots_and_observes_the_final_sync ... ok test usage::tests::stale_metadata_cannot_replace_a_newer_update ... ok test usage::tests::writes_moves_trash_and_purge_update_without_a_recount ... ok test usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames ... FAILED test usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota ... FAILED test usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration ... FAILED running 1 test test usage::tests::bulk_writes_and_published_folders_count_without_a_recount ... ok test usage::watch::independent_review_755::abrupt_stop_during_registration_reopens_acknowledged_files ... ok test usage::watch::independent_review_755::registration_recount_repairs_window_mutations_and_merges_app_writes ... ok test usage::watch::tests::watcher_registration_never_blocks_startup_or_initial_accounting ... ok test usage::watch::tests::outside_writes_and_directory_renames_repair_usage ... ok test usage::watch::tests::deleted_paths_do_not_accumulate_without_periodic_recounts ... ok test tests::big_writes_arrive_whole ... ok failures: ---- usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames stdout ---- thread 'usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames' (3116348) panicked at crates/fsio/src/usage/watch.rs:250:9: assertion `left == right` failed: quota must count native filenames losslessly left: 0 right: 16 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ---- usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota stdout ---- thread 'usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota' (3116349) panicked at crates/fsio/src/usage/watch.rs:292:9: assertion `left == right` failed: source stays charged and destination stays uncharged left: (18, 0) right: (0, 11) ---- usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration stdout ---- thread 'usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration' (3116352) panicked at crates/fsio/src/usage/watch.rs:269:9: assertion `left == right` failed: second admission used a stale initial snapshot left: 0 right: 10 failures: usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration test result: FAILED. 42 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s error: test failed, to rerun pass `-p calternal-fsio --lib` Running unittests src/lib.rs (target/debug/deps/calternal_memory-3b65467e6e94a530) running 3 tests test tests::huge_pages_go_off ... ok test tests::nested_bursts_defer_automatic_reclamation_and_unwind_releases_them ... ok test tests::trimming_is_harmless ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_migrate_v0-0307c6ecc045a6ef) running 37 tests test tests::rules::dry_run_writes_nothing ... ok test tests::rules::m1_custom_daily_title_and_heading_stay ... ok test tests::rules::m10_tz_markers_go_and_other_zones_convert_to_the_notes_zone ... ok test tests::rules::edited_files_are_never_overwritten_without_asking ... ok test tests::rules::m1_daily_notes_get_day_names_ids_and_lose_generated_headings ... ok test tests::rules::m2_attachments_that_exist_are_copied_and_relinked ... ok test tests::rules::m1_titles_come_from_title_then_h1_then_file_name_and_stay_unique ... ok test tests::rules::m2_code_is_never_rewritten ... ok test tests::rules::m2_unresolved_links_stay_as_written_and_are_reported ... ok test tests::rules::m2_wikilinks_always_become_standard_links ... ok test tests::rules::m3_m5_frontmatter_keys_drop_and_times_convert ... ok test tests::rules::m2_links_are_repaired_by_name_date_title_and_slug ... ok test tests::rules::m5_unreadable_dates_fall_back ... ok test tests::rules::m4_unreferenced_block_ids_go_and_referenced_ones_stay ... ok test tests::rules::m6_conflict_copies_are_not_migrated ... ok test tests::rules::m7_tasks_blocks_are_stripped_and_listed ... ok test tests::units::every_v0_time_shape_converts ... ok test tests::units::file_names_give_titles ... ok test tests::rules::m8_only_notes_and_linked_files_move ... ok test tests::units::keys_ignore_case_encoding_quotes_and_md ... ok test tests::units::links_parse_in_every_shape ... ok test tests::units::unix_times_become_india_time ... ok test tzmarker::tests::a_conversion_that_leaves_the_day_is_kept_and_reported ... ok test tzmarker::tests::berlin_converts_inside_the_day ... ok test tzmarker::tests::code_is_never_touched ... ok test tzmarker::tests::day_from_a_date_value ... ok test tzmarker::tests::eu_summer_time_edges ... ok test tzmarker::tests::marker_at_the_end_or_tight_leaves_no_stray_space ... ok test tzmarker::tests::no_zone_in_the_note_means_strip_only ... ok test tzmarker::tests::not_a_marker_is_left_alone ... ok test tzmarker::tests::same_zone_just_goes ... ok test tzmarker::tests::second_run_changes_nothing ... ok test tzmarker::tests::styles_survive_conversion ... ok test tzmarker::tests::unknown_zone_or_a_non_log_line_is_kept_and_counted ... ok test write::tests::migration_preserves_files_changed_after_preflight ... ok test tests::rules::running_twice_gives_the_same_bytes ... ok test tests::no_new_markers::nothing_writes_a_tz_marker ... ok test result: ok. 37 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s Running unittests src/lib.rs (target/debug/deps/calternal_notes-ec259b4b0eee28fd) running 461 tests test anchor::tests::lines_by_utf16_index ... ok test backlinks::tests::snippets_are_the_trimmed_line ... ok test anchor::tests::hash_is_plain_sha256_hex ... ok test backlinks::tests::links_are_fold_keys_and_lines ... ok test blocks::tests::finds_list_children_and_heading_sections ... ok test blocks::tests::line_edits ... ok test blocks::tests::shapes_keep_markers ... ok test blocks::tests::titles_from_the_first_sentence ... ok test backlinks::writes::tests::replacement_still_works_while_the_source_index_is_dropped ... ok test backlinks::writes::tests::changed_lines_duplicates_and_corrupt_values_are_replaced ... ok test backlinks::writes::tests::identical_multisets_do_not_write_even_when_order_changes ... ok test bulk::undo::tests::inverse_restores_the_text ... ok test diff::tests::an_inserted_line_starts_at_a_line_start ... ok test bulk::undo::tests::inverse_roundtrips ... ok test bulk::error_tests::legacy_job_reports_hide_stored_source_details ... ok test diff::tests::emoji_positions_are_utf16 ... ok test diff::tests::small_change_is_a_small_edit ... ok test file_stamp::tests::each_field_and_path_byte_affects_the_stamp ... ok test file_stamp::tests::filesystem_metadata_uses_nanoseconds_and_the_exact_relative_path ... ok test file_stamp::tests::stable_vectors_cover_unicode_and_extreme_scalars ... ok test frontmatter::tests::h1_skips_code_and_frontmatter ... ok test frontmatter::tests::quoting ... ok test frontmatter::tests::reads_keys ... ok test frontmatter::tests::set_adds_a_line_or_a_block ... ok test frontmatter::tests::set_changes_only_the_value ... ok test frontmatter::tests::set_is_utf16_aware ... ok test health::tests::anchors ... ok test bulk::error_tests::failed_job_reports_keep_source_details_in_the_server_error ... ok test history::blobs::tests::photo_chunks_preserve_folding_unknown_fields_and_line_endings ... ok test diff::tests::edits_never_split_a_character ... ok test diff::tests::edits_turn_old_into_new ... ok test history::companions::import_cache_tests::prepared_companions_are_applied_on_insert_or_roll_back_with_the_plan ... ok test history::companions::migration_tests::old_staging_allocation_order_migrates_to_application_order ... ok test history::companions::import_cache_tests::import_cache_budget_returns_after_success_and_failure ... ok test history::companions::tests::a_companion_lands_with_its_change ... ok test history::companions::tests::retained_bytes_follow_every_change_and_match_a_full_count ... ok test history::companions::tests::rejected_companion_writes_leave_history_and_quota_unchanged ... ok test history::companions::tests::keys_answer_without_reading_bytes_and_cover_older_rows ... ok test history::companions::tests::staged_rows_wait_for_their_step ... ok test history::companions::tests::written_marks_and_unwritten_rows ... ok test history::tests::a_busy_begin_reports_its_cause_without_running_the_job ... ok test history::memory_tests::batch_admission_failure_dooms_its_lane_before_a_later_write ... ok test history::tests::a_failed_commit_never_replies_with_a_successful_statement_result ... ok test history::tests::a_failed_statement_rolls_back_and_reports_the_cause_to_the_whole_group ... ok test history::tests::a_competing_writer_cannot_invalidate_a_history_write_snapshot ... ok test history::memory_tests::history_payload_bytes_are_bounded_per_home_and_globally_until_completion ... ok test history::tests::appends_are_ordered_and_readable ... ok test history::tests::background_save_bookkeeping_shares_edits_without_early_receipts ... ok test history::tests::pending_save_promotes_to_base ... ok test index::snapshot_tests::bounded_snapshots_keep_owned_rows_across_holes_and_slot_reuse ... ok test index::tests::a_shared_path_answers_with_the_newest_note ... ok test history::tests::disk_full_keeps_the_cause_and_failed_writes_can_be_retried ... ok test index::tests::a_torn_tail_cannot_swallow_the_next_durable_mapping ... ok test index::tests::compacts_when_it_grows ... ok test home::background_task_tests::finished_background_tasks_are_reaped_during_normal_operation ... ok test index::tests::imported_mappings_share_one_log_append_and_survive_reload ... ok test index::tests::reload_speed ... ignored test index::tests::survives_reload_renames_and_torn_lines ... ok test index::tests::under_finds_exact_paths_and_descendants_with_folded_names ... ok test index::tests::under_keeps_shadowed_paths_for_watcher_removal ... ok test index::tests::unloads_and_reloads ... ok test links::escaped_labels::generated_labels_round_trip_and_custom_markup_survives_retargeting ... ok test history::blobs::tests::fifty_two_weekly_edits_share_the_unchanged_original_photo ... ok test links::tests::finds_standard_and_old_style_links ... ok test links::tests::frontmatter_code_samples_do_not_hide_body_links ... ok test links::tests::longer_backtick_fence_does_not_close_on_three_ticks ... ok test links::tests::nested_brackets_in_text ... ok test links::tests::nested_fences_and_indented_code_follow_commonmark_boundaries ... ok test links::tests::normal_fence_control_keeps_links_after_the_block ... ok test links::tests::relative_paths ... ok test links::tests::resolves_relative_to_the_linking_note ... ok test links::tests::retarget_follows_the_title_and_keeps_custom_text ... ok test links::tests::retarget_from_a_subfolder ... ok test links::tests::retarget_matches_case_and_unicode_forms ... ok test links::tests::skips_code_images_and_the_web ... ok test links::tests::tilde_fence_does_not_close_on_trailing_text ... ok test links::tests::unclosed_fence_hides_links_through_eof ... ok test meta::descriptions::tests::a_failed_fresh_plugin_batch_rolls_back_its_note_rows_too ... ok test index::tests::directory_counts_match_full_scan_after_moves_and_reload ... ok test meta::fields::tests::cache_upgrade_resets_counts_and_link_rows_and_keeps_note_keys_stable ... ok test meta::fields::tests::stamp_only_changes_keep_sort_fields_and_tags_but_refresh_links ... ok test meta::scan::tests::a_prepared_scan_cannot_replace_a_later_announced_live_pin ... ok test meta::scan::tests::an_identity_returning_after_selection_keeps_its_list_row ... ok test index::tests::answers_like_plain_maps ... ok test meta::scan::tests::stamp_walk_preserves_sparse_and_extreme_keys ... ok test meta::tests::cursors_round_trip_and_reject_junk ... ok test meta::tests::snippets_skip_frontmatter_and_headings ... ok test missing::targets::tests::a_name_is_the_file_without_its_folder_and_extension ... ok test missing::targets::tests::names_rank_exact_then_prefix_then_word_then_inside ... ok test naming::tests::what_fits_and_what_to_try ... ok test props::tests::adds_removes_and_quotes_links ... ok test props::tests::already_typed_text_lists_keep_their_comments_and_quotes ... ok test props::tests::changes_only_the_touched_key ... ok test props::tests::list_items_are_written_as_text_too ... ok test props::tests::obsidian_written_yaml_reads ... ok test meta::tests::fresh_fill_restores_checkpointing_after_success_and_failure ... ok test props::tests::outside_keys_win_whole_and_unrelated_pending_keys_survive ... ok test props::tests::quoting_round_trips_tricky_text ... ok test props::tests::reads_every_list_form ... ok test props::tests::refuses_what_it_cannot_read ... ok test props::tests::review_malformed_unrelated_property_blocks_writes ... ok test props::tests::review_property_case_override_is_honored ... ok test props::tests::review_text_yaml_types ... ok test props::tests::scalar_writes_preserve_types_in_both_directions ... ok test props::tests::selected_display_keys_keep_unrelated_errors_and_source_order ... ok test props::tests::simple_display_large_numeric_scalars_agree_with_yaml ... ok test props::tests::simple_display_mapping_is_a_subset_of_valid_yaml ... ok test props::tests::simple_display_mapping_keeps_full_validation_for_other_yaml ... ok test props::tests::simple_display_scalars_agree_with_the_yaml_validator ... ok test props::tests::unicode_display_scalars_agree_with_yaml ... ok test rename::tests::clash_numbers ... ok test rename::tests::daily_names ... ok test rename::tests::h1_is_set_or_added ... ok test room::acks::tests::varuints_round_trip ... ok test room::actor::retry_tests::malformed_update_remains_a_permanent_refusal ... ok test room::actor::retry_tests::retry_budget_failure_requests_rejoin_without_permanent_refusal ... ok test room::edit::tests::checks_bounds_overlap_and_surrogates ... ok test room::pipeline::memory_tests::actor_api_payload_remains_byte_bounded_when_deferred ... ok test room::pipeline::memory_tests::global_retry_bytes_refuse_before_mutation_and_release_after_commit ... ok test meta::descriptions::tests::common_tag_totals_keep_plugin_visibility_filters_and_cursor_scope ... ok test room::pipeline::memory_tests::parked_cross_writer_input_is_journaled_before_its_dependency_releases_it ... ok test room::pipeline::memory_tests::server_and_outside_updates_are_admitted_before_live_mutation ... ok test room::pipeline::memory_tests::per_room_retry_bytes_apply_backpressure_before_another_update ... ok test room::save::tests::concurrent_typists_and_saves_converge ... ok test room::save::tests::kill_nine_mid_save_recovers_title_and_bytes ... ok test room::save::tests::review::failed_history_outside_edit_cannot_be_acknowledged_before_recovery ... ok test room::save::tests::review::failed_history_server_edit_cannot_be_acknowledged_before_recovery ... ok test room::save::tests::review::group_commit::a_parked_step_two_does_not_answer_save_checks ... ok test room::save::tests::review::group_commit::a_peer_joining_mid_retry_and_typing_is_saved_once_durable ... ok test room::save::tests::review::group_commit::a_retried_api_edit_sends_its_changed_event ... ok test room::save::tests::review::group_commit::an_incomplete_step_two_cannot_release_held_save_checks ... ok test room::save::tests::review::group_commit::edits_typed_during_a_write_commit_together ... ok test room::save::tests::review::group_commit::a_failed_write_is_never_overtaken ... ok test room::save::tests::review::group_commit::lanes::checks_after_each_edit_stay_bounded_per_connection ... ok test room::save::tests::review::group_commit::lanes::doomed_lanes_do_not_roll_back_others ... ok test room::save::tests::review::group_commit::lanes::mid_batch_failure_with_other_note_typing ... ok test room::save::tests::review::group_commit::mixed_paths_keep_applied_order_through_retry ... ok test room::save::tests::review::group_commit::perf_save_checks_under_twenty_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test room::save::tests::review::group_commit::save_checks_during_an_outage_stay_bounded ... ok test room::save::tests::review::group_commit::saved_arrives_after_storage_recovers_without_new_activity ... ok test room::save::tests::review::group_commit::two_notes_keep_their_own_order ... ok test links::tests::code_block_spans_match_pulldown_on_random_markdown ... ok test room::save::tests::review::history_durability::independent_652_failed_first_typed_edit_must_precede_second ... ok test room::save::tests::review::history_durability::independent_652_disk_full_mid_burst_then_recovery ... ok test room::save::tests::review::history_durability::independent_652_queued_api_requires_replay_after_kill9 ... ok test room::save::tests::review::history_durability::independent_652_queued_crash_child ... ok test room::save::tests::review::history_durability::independent_652_real_syncclient_joining_snapshot_is_not_saved ... ok test room::save::tests::review::history_durability::independent_652_real_syncclient_peers_and_restart_replay ... ok test room::save::tests::review::history_durability::metadata_refresh_does_not_block_sync_behind_an_uncommitted_seed ... ok test room::save::tests::review::history_durability::perf_outage_checks_under_two_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test room::save::tests::review::history_durability::retained_failed_edits_keep_the_file_and_list_cache_dirty ... ok test room::save::tests::review::review_acknowledged_save_child ... ok test room::save::tests::review::review_delete_set_before_insert_and_trailing_format_marks ... ok test room::save::tests::review::history_durability::independent_652_outage_queue_and_save_checks ... ok test room::save::tests::review::review_failed_save_retry_and_outside_retry_keep_base_cache ... ok test room::save::tests::review::review_kill_nine_after_save_reply_preserves_exact_file_history_and_version ... ok test props::tests::only_intended_keys_change ... ok test room::save::tests::review::slow_disk::slow_disk_long ... ignored, measurement for the perf VM, not a gate test room::save::tests::review::slow_disk::slow_disk_matrix ... ignored, measurement for the perf VM, not a gate test room::save::tests::save_kill_child ... ok test room::save::tests::saved_bytes_and_titles_match_the_old_copy_path ... ok test room::save::tests::title_sync_does_not_decode_the_saved_document ... ok test scan::classify::tests::folded_aliases_are_changed_without_becoming_vanished ... ok test scan::state::alias_test::a_cache_alias_is_replaced_without_appending_to_its_target ... ok test scan::state::tests::a_torn_tail_is_ignored_then_removed_before_append ... ok test scan::state::tests::appended_edits_deletions_and_compaction_keep_the_snapshot ... ok test scan::tests::day_ids_name_their_files ... ok test scan::tests::state_round_trips_and_skips_odd_names ... ok test scan::tests::unchanged_scan_keeps_state_file_and_changed_scan_appends ... ok test search::tests::a_note_becomes_a_document ... ok test search::tests::plain_search_lines_borrow_their_text ... ok test search::tests::search_lines_keep_link_text_and_replacement_order ... ok test search::tests::titles_fall_back_to_the_file_name ... ok test smartline::tests::a_plain_line ... ok test smartline::tests::only_tags_are_words ... ok test smartline::tests::trailing_tags_only ... ok test stamp::tests::formats_with_offset ... ok test storage_crash::kill9_after_ack_during_split_hdd_save_recovers_exact_text ... ok test storage_crash::storage_child ... ok test tags::front::tests::every_way_of_writing_tags ... ok test tags::merge::tests::property_tags_go_with_their_comma_or_line ... ok test tags::merge::tests::text_tags_go_with_one_space ... ok test tags::rewrite::tests::merging_keeps_every_tag_once_at_most ... ok test tags::rewrite::tests::nothing_to_do_is_no_edits ... ok test tags::rewrite::tests::only_real_tags_change ... ok test tags::rewrite::tests::positions_count_utf16 ... ok test tags::rewrite::tests::properties_change_name_only ... ok test tags::rewrite::tests::rename_and_back_is_the_same_text ... ok test tags::rewrite::tests::renames_tags_and_nested_tags_only ... ok test tags::rewrite::tests::renaming_onto_an_existing_tag_merges ... ok test tags::rewrite::tests::words_code_links_and_headings ... ok test tags::scan::tests::code_is_never_tags ... ok test tags::scan::tests::hash_free_lines_still_open_and_close_code_fences ... ok test tags::scan::tests::headings_and_quotes_keep_their_tags ... ok test tags::scan::tests::link_targets_and_addresses_are_never_tags ... ok test tags::scan::tests::not_tags ... ok test tags::scan::tests::plain_tags ... ok test tags::tests::nesting_and_cleaning ... ok test tags::tests::properties_and_text ... ok test tests::acks::an_older_lineage_is_refused_before_anything_is_sent ... ok test tests::acks::checks_advance_in_order_and_cover_every_earlier_edit ... ok test tests::acks::lineage_survives_a_restart ... ok test tests::acks::saved_means_the_change_is_in_history ... ok test tests::anchors::an_anchor_follows_its_block_when_lines_shift ... ok test tests::anchors::an_edited_block_is_refused_never_the_wrong_one ... ok test tests::anchors::anchors_need_a_hash_and_block_ids_work ... ok test tests::anchors::history_folds_typing_and_names_jobs ... ok test room::save::tests::review::review_title_precedence_edge_matrix ... ok test tests::appends::an_append_to_a_long_note_stays_small ... ok test tests::anchors::shifting_lines_never_move_the_wrong_block ... ok test tests::appends::appends_built_directly_match_the_copy_byte_for_byte ... ok test tests::appends_review::delete_whole_tail_then_append_matches ... ok test tests::appends_review::frontmatter_map_write_falls_back ... ok test tests::appends::typists_and_appends_interleave_on_one_note ... ok test tests::appends_review::trailing_format_marker_bytes ... ok test tests::delta_review::deleting_preserves_an_occupied_trash_destination ... ok test tests::delta_review::delta_independent_same_id_create_retries_joined_must_not_panic ... ok test tests::delta_review::delta_permanent_deletion_history_failure_must_terminate_scan ... ok test tests::delta_review::placement_review_bulk_create_cannot_adopt_an_outside_file ... ok test tests::delta_review::placement_review_bulk_create_retry_keeps_original_version_for_undo ... ok test tests::delta_review::placement_review_planned_rename_conflict_keeps_links_unchanged ... ok test tests::delta_review::placement_review_rename_retargets_links_to_the_actual_suffix ... ok test tests::delta_review::placement_review_undo_rename_conflict_keeps_links_at_the_live_note ... ok test tests::delta_review::rename_uses_a_suffix_for_an_unindexed_destination ... ok test tests::delta_review::same_id_sibling_creates_with_different_text_conflict ... ok test tests::event_visibility::a_failed_list_commit_cannot_announce_a_pin ... ok test tests::event_visibility::a_scan_cannot_replace_an_announced_live_pin_with_the_old_file ... ok test tests::appends_review::fuzz_deletes_restarts_parked ... ok test room::save::tests::review::group_commit::lanes::a_failing_note_does_not_starve_another_typist ... ok test tests::event_visibility::create ... ok test tests::event_visibility::create_text ... ok test tests::event_visibility::delete ... ok test tests::event_visibility::edit ... ok test tests::event_visibility::edit_title ... ok test tests::event_visibility::edit_title_property ... ok test tests::event_visibility::failed_delete_then_restore_announces_the_current_state ... ok test tests::event_visibility::move_note ... ok test tests::event_visibility::outside_create ... ok test tests::event_visibility::outside_delete ... ok test tests::event_visibility::outside_edit ... ok test tests::event_visibility::outside_edit_closed ... ok test tests::event_visibility::outside_rename ... ok test tests::event_visibility::regression_backup_discovery_cannot_reuse_a_forgotten_id ... ok test tests::event_visibility::regression_create_retry_after_restart_uses_file_without_intent ... ok test tests::event_visibility::regression_create_retry_conflicts_with_different_file_text ... ok test tests::event_visibility::regression_create_retry_normalizes_server_keys_consistently ... ok test tests::event_visibility::regression_create_retry_with_crlf_and_bom_keeps_bytes ... ok test tests::event_visibility::regression_create_with_text_still_renames_after_its_h1 ... ok test tests::event_visibility::regression_create_with_text_writes_only_managed_frontmatter ... ok test tests::event_visibility::regression_delayed_depart_cannot_clear_gone ... ok test tests::event_visibility::outside_rename_closed ... ok test tests::event_visibility::regression_failed_create_cannot_resurrect_forgotten_id ... ok test tests::event_visibility::regression_failed_initial_file_write_can_retry ... ok test tests::event_visibility::regression_failed_save_hint_still_schedules_title_rename ... ok test tests::event_visibility::regression_failed_unsaved_edit_restart_reconciles_from_journal ... ok test tests::event_visibility::regression_forgotten_id_stays_gone_after_path_reuse_and_restart ... ok test tests::event_visibility::pin ... ok test tests::event_visibility::regression_initial_file_precedes_visible_identity ... ok test tests::event_visibility::regression_kill_after_outside_commit_repairs_list_on_start ... ok test tests::event_visibility::regression_outside_commit_child ... ok test tests::event_visibility::regression_purge_commits_path_state_before_unlink_or_event ... ok test tests::event_visibility::regression_delete_failure_then_forget_keeps_gone ... ok test tests::event_visibility::rename_public_retry ... ok test tests::event_visibility::rename_retry ... ok test tests::event_visibility::regression_one_reconcile_path_after_failed_edit ... ok test tests::event_visibility::restore_retry_repairs_a_missing_list_row_for_an_open_room ... ok test tests::event_visibility::review_create_retry_preserves_initial_text_explicit_id ... ok test tests::event_visibility::review_create_retry_preserves_initial_text_key_id ... ok test tests::event_visibility::review_create_retry_without_key_preserves_initial_text_once ... ok test tests::event_visibility::review_discovery_publication_retries_after_metadata_failure ... ok test tests::event_visibility::review_load_event_recovers_after_meta_failure ... ok test tests::event_visibility::review_restore_event_recovers_after_meta_failure ... ok test tests::event_visibility::review_restore_publication_survives_home_restart ... ok test tests::event_visibility::round4_create_retry_does_not_wait_for_scan_under_lifecycle ... ok test tests::event_visibility::round4_daily_create_retry_does_not_reenter_lifecycle ... ok test tests::event_visibility::rename ... ok test room::save::tests::review::review_fuzz_old_new_bytes_history_versions_and_restarts ... ok test tests::event_visibility::round4_startup_retries_failed_list_stamp_read ... ok test tests::event_visibility::restore ... ok test tests::event_visibility::round4_startup_retries_journal_discovery_before_file_rows ... ok test tests::event_visibility::save_background_retry ... ok test tests::event_visibility::round4_unreadable_note_does_not_block_healthy_repair_or_ack ... ok test tests::event_visibility::save_retry ... ok test tests::event_visibility::saved_list_fields_keep_file_date_fallback_current ... ok test tests::event_visibility::saved_list_fields_rebuild_after_eviction_and_follow_later_edits ... ok test tests::event_visibility::saved_rows_keep_file_stamps_for_warm_scans ... ok test tests::event_visibility::saved_stamp_describes_our_write_before_a_later_outside_write ... ok test tests::event_visibility::startup_scan_events_are_listed_before_the_scan_finishes ... ok test tests::event_visibility::save ... ok test tests::event_visibility::unread_external_bytes_do_not_get_a_clean_stamp ... ok test tests::fanout::a_crash_before_the_seed_is_durable_never_doubles_text ... ok test tests::fanout::a_crash_between_fan_out_and_disk_loses_nothing ... ok test tests::fanout::a_first_open_does_not_wait_for_the_disk ... ok test tests::fanout::a_version_always_matches_its_text ... ok test tests::fanout::bursts_converge_and_reach_history ... ok test tests::fanout::collaborators_see_typing_before_the_disk ... ok test tests::fresh::a_note_made_with_text_opens_with_its_frontmatter ... ok test tests::held::a_held_note_answers_before_its_file_and_writes_it_after ... ok test tests::held::a_lost_identity_whose_path_was_taken_uses_the_plugins_naming_order ... ok test tests::held::a_synced_first_file_with_a_lost_index_keeps_its_original_path ... ok test tests::event_visibility::unpin ... ok test tests::held::identity_without_history_is_dropped_on_the_next_start ... ok test tests::kill9::child ... ok test tests::held::history_without_identity_comes_back_on_the_next_start ... ok test tests::kill9::delete_killed_after_its_answer_finishes_once ... ok test tests::kill9::permanent_delete_after_restore_cannot_delete_the_live_note ... ok test tests::kill9::quick_delete_restore_survives_kill ... ok test tests::kill9::quick_restore_delete_survives_kill ... ok test tests::kill9::restore_delete_forget_does_not_resurrect_after_kill ... ok test tests::kill9::restore_killed_after_its_answer_finishes_once ... ok test tests::listing::a_common_tag_pages_the_same_in_every_order ... ok test tests::listing::filters_by_tag_kind_and_created_range ... ok test tests::listing::pages_cover_every_note_once_in_a_stable_order ... ok test tests::listing::pinning_shows_in_the_list_and_unpinning_leaves_no_trace ... ok test tests::listing::the_first_page_never_waits_for_the_home_to_open ... ok test tests::event_visibility::round4_recorder_outage_bounds_deleted_ids_and_drains_overflow ... ok test tests::listing::the_list_stays_live_with_new_notes_saves_and_outside_edits ... ok test tests::listing::the_kept_count_follows_adds_and_deletes ... ok test tests::missing::a_path_tells_here_trash_and_gone ... ok test tests::missing::a_rename_in_the_app_leaves_the_old_path_moved ... ok test tests::missing::make_from_link_makes_the_note_where_the_link_points_and_undo_takes_it_back ... ok test tests::missing::never_made_targets_are_offered_with_their_capitals_and_link_counts ... ok test tests::missing::never_written_paths_are_new_and_bad_ones_too ... ok test tests::missing::a_move_outside_is_found_and_relink_repoints_the_links ... ok test tests::missing::notes_in_the_trash_from_before_are_found ... ok ```
Author
Owner

Gate output verbatim. Command: cargo test -j3 --workspace --no-fail-fast. Exit: 101. Final tests branch head: edba00ec64.
The full run was at 108a711b; the only later change is one test-only lint allowance for an intentional outside-program write. No test behavior changed.
Part 3/3.

test tests::missing::restored_with_a_new_name_reads_as_moved ... ok
test tests::opening::a_cold_fill_ends_with_every_index_and_right_answers ... ok
test tests::opening::a_note_never_typed_in_is_still_forgotten_on_restart ... ok
test tests::opening::a_warm_open_announces_only_what_changed_while_closed ... ok
test tests::opening::a_cold_home_indexes_every_file_once_with_its_own_id ... ok
test tests::opening::identifying_an_already_indexed_file_never_makes_it_a_copy ... ok
test tests::opening::shutting_down_leaves_the_list_log_empty ... ok
test tests::opening::asking_mid_scan_never_says_not_found_and_never_duplicates_a_day ... ok
test tests::opening::upgrading_without_a_saved_scan_announces_nothing_for_known_notes ... ok
test tests::outside::copied_note_gets_a_fresh_id ... ok
test tests::outside::edit_while_closed_is_merged_on_open ... ok
test tests::outside::missed_watcher_event_is_caught_before_saving ... ok
test tests::outside::outside_create_and_delete ... ok
test tests::outside::outside_edit_while_typing_merges ... ok
test tests::outside::outside_rename_keeps_the_id ... ok
test tests::listing::an_idle_home_with_one_thousand_notes_does_not_reconcile ... ok
test tests::opening::typing_saved_only_in_history_survives_a_restart_before_the_first_save ... ok
test tests::peek::an_open_room_answers_with_its_live_text ... ok
test tests::peek::reads_files_without_opening_rooms ... ok
test tests::peek::returns_at_most_fifty ... ok
test tests::pending::apply_places_changes_in_any_order ... ok
test tests::pending::changes_out_of_order_all_arrive_and_saved_is_true ... ok
test tests::pending::yrs_alone_loses_a_parked_change ... ok
test tests::outside::own_saves_are_not_outside_edits ... ok
test tests::renames::a_format_note_is_never_renamed_after_its_title ... ok
test tests::renames::a_taken_name_gets_a_number_and_daily_notes_keep_theirs ... ok
test tests::renames::a_title_ending_in_a_number_does_not_schedule_a_rename ... ok
test tests::outside::polling_finds_outside_changes ... ok
test tests::renames::backlinks_list_linked_and_unlinked_mentions ... ok
test tests::renames::cancelled_prepared_import_drops_its_private_image_and_replays_the_plan ... ok
test tests::renames::delta2_rename_collision_must_not_apply_dependent_title_edit ... ok
test tests::renames::make_note_moves_the_block_and_undoes_as_one_step ... ok
test tests::renames::move_block_to_another_note_and_back ... ok
test tests::renames::rename_killed_after_title_before_progress_recovers_and_undoes ... ok
test tests::renames::rename_killed_between_move_and_title_recovers_and_undoes ... ok
test tests::renames::backlinks_follow_edits_and_deletes ... ok
test tests::renames::rename_recovery_child ... ok
test tests::renames::saving_a_title_ending_in_a_number_does_not_schedule_a_rename ... ok
test tests::renames::rename_moves_the_file_and_repoints_every_link ... ok
test tests::renames::typing_in_a_linking_note_during_a_rename_is_kept ... ok
test tests::renames::undo_keeps_a_made_note_someone_typed_in ... ok
test tests::rooms::fresh_note_opened_by_many_at_once_is_not_doubled ... ok
test tests::rooms::late_joiner_gets_full_state ... ok
test tests::rooms::patches_use_utf16_positions ... ok
test tests::renames::typing_a_new_title_renames_the_file_after_a_pause ... ok
test tests::rooms::retried_change_applies_once ... ok
test tests::rooms::retried_create_makes_one_note ... ok
test tests::rooms::stale_replace_keeps_newer_typing ... ok
test tests::rooms::typing_survives_a_concurrent_delete ... ok
test tests::round4_review::create_reports_conflict_when_an_outside_file_arrives_before_placement ... ok
test tests::round4_review::independent_creates_joined_in_one_task_do_not_reenter ... ok
test tests::round4_review::scan_propagates_deletion_history_failure_after_reacquiring_lifecycle ... ok
test tests::round4_review::scan_propagates_deletion_history_read_failure_and_retries ... ok
test tests::rooms::random_concurrent_editing_converges_without_duplicates ... ok
test tests::saving::a_write_error_keeps_the_change ... ok
test tests::round4_review::startup_keeps_unknown_notes_incomplete_until_deletion_history_retry ... ok
test tests::saving::an_error_after_the_write_does_not_double_text ... ok
test tests::saving::crash_after_write_does_not_double_text ... ok
test tests::saving::disk_seed_keeps_current_fields_and_repairs_an_edit_with_preserved_timestamps ... ok
test tests::saving::failed_save_keeps_the_change ... ok
test tests::saving::crash_before_write_loses_nothing ... ok
test tests::saving::first_property_edit_and_disk_seed_share_one_durable_transaction ... ok
test tests::saving::first_property_noop_returns_the_durable_seed_version ... ok
test tests::saving::line_endings_and_bom_are_kept ... ok
test tests::saving::first_keystroke_creates_the_file ... ok
test tests::saving::opening_never_writes ... ok
test tests::saving::properties_continue_during_file_io ... ok
test tests::saving::saving_does_not_loop ... ok
test tests::saving::title_and_h1_stay_in_step ... ok
test tests::saving::typing_and_history_continue_during_file_io ... ok
test tests::renames::a_crash_mid_rename_resumes_and_applies_each_edit_once ... ok
test tests::saving::nonstop_typing_still_saves ... ok
test tests::shutdown::a_shutdown_wait_made_after_shutdown_ends_at_once ... ok
test tests::shutdown::a_create_that_outlives_shutdown_writes_nothing ... ok
test tests::shutdown::no_background_work_starts_after_shutdown ... ok
test tests::shutdown::healthy_shutdown_settles_pending_typing_before_saving ... ok
test tests::shutdown::scan_waiters_stay_released_once_shutdown_releases_them ... ok
test tests::shutdown::nothing_opens_or_writes_on_a_home_after_shutdown ... ok
test tests::shutdown::settlement::shutdown_settlement_late_disk_recovery_requires_replay ... ok
test tests::shutdown::settlement::shutdown_settlement_failed_promotion_preserves_written_snapshot ... ok
test tests::shutdown::settlement::shutdown_settlement_live_file_io_failure_joins_writer ... ok
test tests::shutdown::shutdown_cancels_a_reconciler_waiting_for_startup_scan ... ok
test tests::shutdown::shutdown_closes_the_home_history_writer_before_returning ... ok
test tests::shutdown::shutdown_finishes_when_history_writes_keep_failing ... ok
test tests::shutdown::a_create_running_at_shutdown_finishes_before_shutdown_returns ... ok
test tests::shutdown::shutdown_many_full_history_rooms_12 ... ok
test tests::shutdown::shutdown_many_full_history_rooms_100 ... ok
test tests::storm::outside_rewrites_during_a_storm_all_land ... ok
test tests::tags::a_big_tag_rename_allows_typing_while_a_batch_is_held ... ok
test tests::tags::bad_names_are_refused ... ok
test tests::tags::perf_big_tag_rename_keystrokes_under_one_second ... ignored, tag-rename typing latency runs on the perf VM via perf/ordinary-latency-vm.sh
test tests::tags::renames_every_tag_and_undoes_as_one_step ... ok
test tests::tags::typing_during_a_tag_rename_is_kept ... ok
test tests::trash::a_closed_note_is_trashed_without_opening_it ... ok
test tests::trash::a_crash_mid_delete_finishes_on_restart_exactly_once ... ok
test tests::trash::a_file_deleted_outside_goes_to_the_trash ... ok
test tests::trash::a_never_typed_note_is_simply_forgotten ... ok
test tests::trash::a_note_deleted_before_its_first_save_keeps_its_text ... ok
test tests::trash::delete_and_restore_answer_once_per_job_id ... ok
test tests::trash::delete_moves_to_trash_and_undo_brings_it_back ... ok
test tests::trash::delete_replay_with_a_stale_index_keeps_the_only_file ... ok
test tests::trash::delete_waits_for_imported_incoming_links_before_remembering_their_identity ... ok
test tests::trash::folder_rename_and_outside_move_bursts_keep_every_descendant ... ok
test tests::trash::forget_deletes_file_and_history_forever ... ok
test tests::trash::half_written_trash_folders_never_hide_a_live_note ... ok
test tests::trash::outside_copy_finishes_a_metadata_only_interruption ... ok
test tests::trash::restore_durably_indexes_a_note_without_an_embedded_id ... ok
test tests::trash::restore_keeps_id_and_history_and_takes_a_free_name ... ok
test tests::trash::restore_with_a_stale_index_really_moves_the_file_back ... ok
test tests::trash::the_sweep_empties_only_notes_older_than_thirty_days ... ok
test tests::trash::trash_ids_never_reach_another_home ... ok
test tests::trash::trash_pages_newest_first ... ok
test tests::trash::trashed_notes_leave_search_lists_and_backlinks_and_come_back ... ok
test tests::unloading::a_connected_client_keeps_it ... ok
test tests::tags::a_crash_mid_rename_resumes_and_renames_each_tag_once ... ok
test tests::unloading::an_unused_home_unloads_and_answers_after ... ok
test tests::unloading::an_open_note_keeps_it ... ok
test tests::writers::every_writer_at_once_with_the_watcher ... ok
test text::tests::mixed_endings_take_the_majority ... ok
test text::tests::styles_round_trip ... ok
test text::tests::uniform_files_round_trip_exactly ... ok
test trash::tests::a_note_without_details_still_reads ... ok
test trash::tests::candidates_include_notes_and_orphan_details_with_a_bounded_scan ... ok
test trash::tests::details_without_a_note_are_not_a_note ... ok
test trash::tests::missing_details_never_age_trash_from_the_notes_old_mtime ... ok
test trash::tests::outside_copy_has_its_details_when_the_file_first_becomes_readable ... ok
test versions::tests::folds_runs_by_author_kind_and_gap ... ok
test watch::native_tests::bulk_files_only_notify_the_watcher_when_the_whole_note_is_placed ... ok
test watch::native_tests::native_watch_ignores_reads_but_keeps_every_kind_of_outside_change ... ok
test ydoc::seed_tests::initial_seed_matches_yrs_and_accepts_later_utf16_edits ... ok
test ydoc::tests::fork_and_merge_keeps_concurrent_typing ... ok
test ydoc::tests::reapplying_an_update_changes_nothing ... ok
test ydoc::tests::utf16_offsets ... ok
test tests::writers::every_writer_at_once_loses_and_doubles_nothing ... ok
test tests::event_visibility::save_outside_retry ... ok
test tests::shutdown::settlement::shutdown_settlement_state_machine ... ok

test result: ok. 455 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 63.52s

     Running unittests src/main.rs (target/debug/deps/calternal_perf-385a32f5b31a5b12)

running 7 tests
test args::tests::parses_trash_only_mode ... ok
test scenarios::soak::tests::slope_of_a_line ... ok
test scenarios::storm::tests::typing_stops_before_the_newline_ahead_of_outside_lines ... ok
test stats::tests::medians_of_runs_and_pooled_singles ... ok
test stats::tests::summary_max_is_the_largest_observed_sample_across_runs ... ok
test scenarios::trash::tests::permanent_deletion_never_removes_a_later_runs_live_note ... ok
test live::tests::frames_round_trip_and_keystrokes_stay_whole ... ok

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

     Running unittests src/bin/storage-bench.rs (target/debug/deps/storage_bench-a8488c0b3a59d14f)

running 0 tests

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

     Running unittests src/bin/tasks-bench.rs (target/debug/deps/tasks_bench-7a6cc7b062b3ad3f)

running 2 tests
test cold::tests::even_median_uses_both_middle_samples ... ok
test cold::tests::median_keeps_real_growth_despite_a_storage_stall ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_plugin_hello-53ca8ca6107399a0)

running 0 tests

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

     Running unittests src/lib.rs (target/debug/deps/calternal_prefs-0967b265e58eb49d)

running 9 tests
test tests::a_change_on_one_device_reaches_the_other ... ok
test tests::keys_are_an_area_then_dotted_parts ... ok
test tests::a_retry_with_the_same_key_acts_once ... ok
test tests::bad_keys_and_big_values_get_friendly_errors ... ok
test tests::saving_the_same_value_again_is_quiet ... ok
test tests::people_do_not_share_preferences ... ok
test tests::quick_saves_from_two_devices_all_land ... ok
test tests::set_then_get_and_survive_a_restart ... ok
test tests::at_most_200_keys_but_existing_ones_can_still_change ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_search-ff67ffa340bd9f12)

running 13 tests
test fuzzy::tests::distance_counts_swaps_as_one ... ok
test query::tests::lone_symbols_are_ignored ... ok
test query::tests::dates_cover_whole_periods ... ok
test fuzzy::tests::common_typos_are_fixed ... ok
test read::tests::block_ids_are_found ... ok
test read::tests::renumbering_shifts_placeholders ... ok
test query::tests::words_filters_and_phrases ... ok
test text::tests::bigrams_cover_unspaced_scripts ... ok
test read::tests::text_matches_like_the_index ... ok
test read::tests::excerpts_mark_matches_in_context ... ok
test text::tests::fold_drops_accents_and_case ... ok
test text::tests::words_keep_indic_vowel_signs ... ok
test schema::tests::an_older_index_gets_its_titles_filled ... ok

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

     Running tests/search.rs (target/debug/deps/search-8eb084de93ee7287)

running 13 tests
test an_empty_search_shows_recent_things ... ok
test every_script_is_searchable ... ok
test behind_answers_at_once_and_catching_up_is_announced_once ... ok
test a_restart_heals_whatever_was_missed ... ok
test perf_search_answer_under_five_hundred_ms ... ignored, first-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test filters_by_tag_kind_and_date ... ok
test odd_input_never_breaks_search ... ok
test searches_answer_while_indexing_runs ... ok
test prefixes_and_typos_are_forgiven ... ok
test results_show_why_they_matched_and_where ... ok
test people_only_ever_find_their_own_things ... ok
test titles_first_then_recent_use_then_body ... ok
test the_index_follows_changes_live ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_server-7e2af946e233741d)

running 12 tests
test live::tests::room_join_metadata_has_explicit_byte_bounds ... ok
test rooms::tests::a_message_in_numbered_pieces_arrives_whole ... ok
test rooms::tests::assembly_is_bounded_per_connection_and_globally_and_expiry_releases_it ... ok
test rooms::tests::backpressure_refuses_the_room_before_later_checks ... ok
test rooms::tests::frames_round_trip ... ok
test rooms::tests::duplicated_missing_and_inconsistent_chunks_never_deliver ... ok
test rooms::tests::malformed_chunk_headers_never_allow_later_checks ... ok
test rooms::tests::old_membership_packets_and_results_cannot_reach_a_rejoined_room ... ok
test compress::tests::big_answers_are_compressed_and_small_ones_are_not ... ok
test rooms::tests::wire_nonces_reject_old_frames_joins_and_leaves_without_tombstones ... ok
test rooms::tests::pending_and_joined_memberships_share_one_connection_count_bound ... ok
test rooms::tests::exact_size_limit_is_delivered_but_a_larger_declaration_is_refused ... ok

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

     Running tests/access.rs (target/debug/deps/access-f42669473dbc3dd8)

running 1 test
test one_line_per_request_with_no_secrets ... ok

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

     Running tests/live.rs (target/debug/deps/live-cda6b637435868a7)

running 6 tests
test health_answers_without_signing_in ... ok
test a_stranger_token_asks_for_a_refresh ... ok
test signed_out_calls_get_a_friendly_refusal ... ok
test errors_carry_codes_not_internals ... ok
test http_to_journal_to_websocket ... ok
test reconnecting_catches_up_from_a_token ... ok

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

     Running tests/signout.rs (target/debug/deps/signout-793271c8352b0390)

running 1 test
test signing_a_device_out_closes_its_live_socket ... ok

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

     Running tests/web.rs (target/debug/deps/web-0c6c38218379bc8a)

running 3 tests
test files_deep_links_and_the_api_live_side_by_side ... ok
test precompressed_files_are_sent_as_they_are_to_whoever_accepts_them ... ok
test caching_and_security_headers_follow_what_each_file_is ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_store-dc5119e9b339ecbc)

running 9 tests
test tests::a_store_with_a_listener_or_a_copy_is_in_use ... ok
test tests::idempotency_is_saved_with_the_events_or_not_at_all ... ok
test tests::commits_are_read_back_in_order ... ok
test tests::a_held_reader_does_not_block_commits_or_other_readers ... ok
test tests::live_entries_arrive_in_journal_order ... ok
test tests::tokens_survive_a_restart_and_reject_strangers ... ok
test tests::reads_are_capped ... ok
test tests::old_idempotency_records_are_swept_after_commits ... ok
test tests::old_idempotency_records_are_swept_when_the_store_opens ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_tasks-a48f6359df24982e)

running 54 tests
test found::day::tests::normalized_days_round_trip_and_keep_order ... ok
test found::tests::borrowed_index_matches_public_parse_for_plain_linked_and_unicode_fields ... ok
test found::tests::borrowed_index_preserves_task_detection_and_excludes_task_checklists ... ok
test found::tests::checkbox_forms ... ok
test found::tests::days_and_times ... ok
test found::tests::empty_checkbox_labels_keep_lf_and_crlf_line_numbers ... ok
test found::tests::every_unrecognised_status_reads_as_open_without_changing_the_source ... ok
test found::tests::borrowed_index_matches_public_parse_in_commonmark_contexts ... ok
test found::tests::finds_checkboxes_everywhere_but_code_and_frontmatter ... ok
test found::tests::first_link_on_the_line_is_the_target ... ok
test found::tests::indexed_display_preserves_unicode_blocks_order_and_duplicate_locations ... ok
test found::tests::malformed_unrelated_yaml_keeps_a_list_valued_status_visible ... ok
test found::tests::lenient_reading ... ok
test found::tests::linked_tasks_after_fences_keep_their_targets ... ok
test found::tests::reference_titles_keep_commonmark_list_boundaries ... ok
test found::tests::reads_a_task_note ... ok
test found::tests::review_code_and_html_are_not_checkboxes ... ok
test found::tests::unicode_marks_and_nested_boxes_survive_candidate_filtering ... ok
test index::codec::tests::line_locations_round_trip ... ok
test index::codec::tests::line_vectors_and_corruption ... ok
test index::codec::tests::arbitrary_paths_round_trip ... ok
test index::flags::tests::every_parsed_combination_round_trips ... ok
test index::row::tests::shared_days_follow_parser_validity_and_preserve_raw_values ... ok
test index::codec::tests::path_padding_and_raw_unicode_do_not_alias ... ok
test index::row::tests::unchanged_fields_skip_writes_but_tag_only_changes_are_stored ... ok
test found::tests::checkbox_fast_path_matches_commonmark ... ok

running 1 test
test index::tags_tests::independent_review_755_crash_between_task_and_membership_writes_is_atomic ... ok
test index::tags_tests::tag_changes_and_reused_keys_keep_public_memberships_and_counts ... ok
test tests::closed_tags_keep_child_groups_and_reopening_restores_sort_fields ... ok
test tests::crash_child ... ok
test tests::field_edits_do_not_reclassify_inbound_checkboxes ... ok
test found::tests::markdown_links_and_task_items_share_commonmark_boundaries ... ok
test tests::linked_boxes_stay_tracked_until_the_last_matching_task_leaves ... ok
test tests::lists_groups_and_counts ... ok
test index::tags_tests::independent_review_755_random_membership_matches_model_and_rolls_back ... ok
test tests::kill_9_during_field_writes_loses_nothing_acknowledged ... ok
test tests::outside_edits_reach_the_lists ... ok
test tests::review_broken_frontmatter_refuses_update ... ok
test tests::rebuild_gives_the_same_rows ... ok
test tests::review_long_code_fence_hides_checkboxes ... ok
test tests::review_outside_edit_during_pending_task_write ... ok
test tests::review_upcoming_with_past_and_future_dates ... ok
test tests::tag_membership::independent_review_755_opens_dev_format_cache_without_changing_files ... ok
test tests::tag_membership::tag_lists_read_new_fields_without_rewriting_membership ... ok
test tests::task_checklist_is_reindexed_when_the_note_stops_being_a_task ... ok
test tests::task_notes_are_hidden_only_from_notes_lists_and_unknown_status_is_kept ... ok
test tests::unreadable_frontmatter_is_shown_but_never_changed ... ok
test tests::untracked_is_open_checkboxes_that_are_not_tasks ... ok
test tests::update_changes_only_its_keys_and_lists_follow_at_once ... ok
test update::tests::checks_values ... ok
test update::tests::null_and_missing_differ ... ok
test tests::a_cold_fill_gives_the_same_rows_as_the_usual_way ... ok
test tests::review_live_list_has_consistent_rows_and_counts ... ok
test tests::order::sql_and_rust_sort_the_same ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_testkit-84605cced32b9d05)

running 0 tests

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

   Doc-tests calternal_attachments

running 0 tests

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

   Doc-tests calternal_auth

running 0 tests

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

   Doc-tests calternal_backdrops

running 0 tests

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

   Doc-tests calternal_contacts

running 0 tests

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

   Doc-tests calternal_contacts_actions

running 0 tests

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

   Doc-tests calternal_core

running 0 tests

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

   Doc-tests calternal_daily

running 0 tests

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

   Doc-tests calternal_engine

running 0 tests

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

   Doc-tests calternal_fixtures

running 0 tests

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

   Doc-tests calternal_fsio

running 0 tests

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

   Doc-tests calternal_memory

running 0 tests

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

   Doc-tests calternal_migrate_v0

running 0 tests

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

   Doc-tests calternal_notes

running 0 tests

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

   Doc-tests calternal_plugin_hello

running 0 tests

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

   Doc-tests calternal_prefs

running 0 tests

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

   Doc-tests calternal_search

running 0 tests

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

   Doc-tests calternal_server

running 0 tests

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

   Doc-tests calternal_store

running 0 tests

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

   Doc-tests calternal_tasks

running 0 tests

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

   Doc-tests calternal_testkit

running 0 tests

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

error: 2 targets failed:
    `-p calternal-auth --lib`
    `-p calternal-fsio --lib`

Gate output verbatim. Command: `cargo test -j3 --workspace --no-fail-fast`. Exit: 101. Final tests branch head: edba00ec64f3afe5780caade7637cb4ffed5cffa. The full run was at 108a711b; the only later change is one test-only lint allowance for an intentional outside-program write. No test behavior changed. Part 3/3. ```text test tests::missing::restored_with_a_new_name_reads_as_moved ... ok test tests::opening::a_cold_fill_ends_with_every_index_and_right_answers ... ok test tests::opening::a_note_never_typed_in_is_still_forgotten_on_restart ... ok test tests::opening::a_warm_open_announces_only_what_changed_while_closed ... ok test tests::opening::a_cold_home_indexes_every_file_once_with_its_own_id ... ok test tests::opening::identifying_an_already_indexed_file_never_makes_it_a_copy ... ok test tests::opening::shutting_down_leaves_the_list_log_empty ... ok test tests::opening::asking_mid_scan_never_says_not_found_and_never_duplicates_a_day ... ok test tests::opening::upgrading_without_a_saved_scan_announces_nothing_for_known_notes ... ok test tests::outside::copied_note_gets_a_fresh_id ... ok test tests::outside::edit_while_closed_is_merged_on_open ... ok test tests::outside::missed_watcher_event_is_caught_before_saving ... ok test tests::outside::outside_create_and_delete ... ok test tests::outside::outside_edit_while_typing_merges ... ok test tests::outside::outside_rename_keeps_the_id ... ok test tests::listing::an_idle_home_with_one_thousand_notes_does_not_reconcile ... ok test tests::opening::typing_saved_only_in_history_survives_a_restart_before_the_first_save ... ok test tests::peek::an_open_room_answers_with_its_live_text ... ok test tests::peek::reads_files_without_opening_rooms ... ok test tests::peek::returns_at_most_fifty ... ok test tests::pending::apply_places_changes_in_any_order ... ok test tests::pending::changes_out_of_order_all_arrive_and_saved_is_true ... ok test tests::pending::yrs_alone_loses_a_parked_change ... ok test tests::outside::own_saves_are_not_outside_edits ... ok test tests::renames::a_format_note_is_never_renamed_after_its_title ... ok test tests::renames::a_taken_name_gets_a_number_and_daily_notes_keep_theirs ... ok test tests::renames::a_title_ending_in_a_number_does_not_schedule_a_rename ... ok test tests::outside::polling_finds_outside_changes ... ok test tests::renames::backlinks_list_linked_and_unlinked_mentions ... ok test tests::renames::cancelled_prepared_import_drops_its_private_image_and_replays_the_plan ... ok test tests::renames::delta2_rename_collision_must_not_apply_dependent_title_edit ... ok test tests::renames::make_note_moves_the_block_and_undoes_as_one_step ... ok test tests::renames::move_block_to_another_note_and_back ... ok test tests::renames::rename_killed_after_title_before_progress_recovers_and_undoes ... ok test tests::renames::rename_killed_between_move_and_title_recovers_and_undoes ... ok test tests::renames::backlinks_follow_edits_and_deletes ... ok test tests::renames::rename_recovery_child ... ok test tests::renames::saving_a_title_ending_in_a_number_does_not_schedule_a_rename ... ok test tests::renames::rename_moves_the_file_and_repoints_every_link ... ok test tests::renames::typing_in_a_linking_note_during_a_rename_is_kept ... ok test tests::renames::undo_keeps_a_made_note_someone_typed_in ... ok test tests::rooms::fresh_note_opened_by_many_at_once_is_not_doubled ... ok test tests::rooms::late_joiner_gets_full_state ... ok test tests::rooms::patches_use_utf16_positions ... ok test tests::renames::typing_a_new_title_renames_the_file_after_a_pause ... ok test tests::rooms::retried_change_applies_once ... ok test tests::rooms::retried_create_makes_one_note ... ok test tests::rooms::stale_replace_keeps_newer_typing ... ok test tests::rooms::typing_survives_a_concurrent_delete ... ok test tests::round4_review::create_reports_conflict_when_an_outside_file_arrives_before_placement ... ok test tests::round4_review::independent_creates_joined_in_one_task_do_not_reenter ... ok test tests::round4_review::scan_propagates_deletion_history_failure_after_reacquiring_lifecycle ... ok test tests::round4_review::scan_propagates_deletion_history_read_failure_and_retries ... ok test tests::rooms::random_concurrent_editing_converges_without_duplicates ... ok test tests::saving::a_write_error_keeps_the_change ... ok test tests::round4_review::startup_keeps_unknown_notes_incomplete_until_deletion_history_retry ... ok test tests::saving::an_error_after_the_write_does_not_double_text ... ok test tests::saving::crash_after_write_does_not_double_text ... ok test tests::saving::disk_seed_keeps_current_fields_and_repairs_an_edit_with_preserved_timestamps ... ok test tests::saving::failed_save_keeps_the_change ... ok test tests::saving::crash_before_write_loses_nothing ... ok test tests::saving::first_property_edit_and_disk_seed_share_one_durable_transaction ... ok test tests::saving::first_property_noop_returns_the_durable_seed_version ... ok test tests::saving::line_endings_and_bom_are_kept ... ok test tests::saving::first_keystroke_creates_the_file ... ok test tests::saving::opening_never_writes ... ok test tests::saving::properties_continue_during_file_io ... ok test tests::saving::saving_does_not_loop ... ok test tests::saving::title_and_h1_stay_in_step ... ok test tests::saving::typing_and_history_continue_during_file_io ... ok test tests::renames::a_crash_mid_rename_resumes_and_applies_each_edit_once ... ok test tests::saving::nonstop_typing_still_saves ... ok test tests::shutdown::a_shutdown_wait_made_after_shutdown_ends_at_once ... ok test tests::shutdown::a_create_that_outlives_shutdown_writes_nothing ... ok test tests::shutdown::no_background_work_starts_after_shutdown ... ok test tests::shutdown::healthy_shutdown_settles_pending_typing_before_saving ... ok test tests::shutdown::scan_waiters_stay_released_once_shutdown_releases_them ... ok test tests::shutdown::nothing_opens_or_writes_on_a_home_after_shutdown ... ok test tests::shutdown::settlement::shutdown_settlement_late_disk_recovery_requires_replay ... ok test tests::shutdown::settlement::shutdown_settlement_failed_promotion_preserves_written_snapshot ... ok test tests::shutdown::settlement::shutdown_settlement_live_file_io_failure_joins_writer ... ok test tests::shutdown::shutdown_cancels_a_reconciler_waiting_for_startup_scan ... ok test tests::shutdown::shutdown_closes_the_home_history_writer_before_returning ... ok test tests::shutdown::shutdown_finishes_when_history_writes_keep_failing ... ok test tests::shutdown::a_create_running_at_shutdown_finishes_before_shutdown_returns ... ok test tests::shutdown::shutdown_many_full_history_rooms_12 ... ok test tests::shutdown::shutdown_many_full_history_rooms_100 ... ok test tests::storm::outside_rewrites_during_a_storm_all_land ... ok test tests::tags::a_big_tag_rename_allows_typing_while_a_batch_is_held ... ok test tests::tags::bad_names_are_refused ... ok test tests::tags::perf_big_tag_rename_keystrokes_under_one_second ... ignored, tag-rename typing latency runs on the perf VM via perf/ordinary-latency-vm.sh test tests::tags::renames_every_tag_and_undoes_as_one_step ... ok test tests::tags::typing_during_a_tag_rename_is_kept ... ok test tests::trash::a_closed_note_is_trashed_without_opening_it ... ok test tests::trash::a_crash_mid_delete_finishes_on_restart_exactly_once ... ok test tests::trash::a_file_deleted_outside_goes_to_the_trash ... ok test tests::trash::a_never_typed_note_is_simply_forgotten ... ok test tests::trash::a_note_deleted_before_its_first_save_keeps_its_text ... ok test tests::trash::delete_and_restore_answer_once_per_job_id ... ok test tests::trash::delete_moves_to_trash_and_undo_brings_it_back ... ok test tests::trash::delete_replay_with_a_stale_index_keeps_the_only_file ... ok test tests::trash::delete_waits_for_imported_incoming_links_before_remembering_their_identity ... ok test tests::trash::folder_rename_and_outside_move_bursts_keep_every_descendant ... ok test tests::trash::forget_deletes_file_and_history_forever ... ok test tests::trash::half_written_trash_folders_never_hide_a_live_note ... ok test tests::trash::outside_copy_finishes_a_metadata_only_interruption ... ok test tests::trash::restore_durably_indexes_a_note_without_an_embedded_id ... ok test tests::trash::restore_keeps_id_and_history_and_takes_a_free_name ... ok test tests::trash::restore_with_a_stale_index_really_moves_the_file_back ... ok test tests::trash::the_sweep_empties_only_notes_older_than_thirty_days ... ok test tests::trash::trash_ids_never_reach_another_home ... ok test tests::trash::trash_pages_newest_first ... ok test tests::trash::trashed_notes_leave_search_lists_and_backlinks_and_come_back ... ok test tests::unloading::a_connected_client_keeps_it ... ok test tests::tags::a_crash_mid_rename_resumes_and_renames_each_tag_once ... ok test tests::unloading::an_unused_home_unloads_and_answers_after ... ok test tests::unloading::an_open_note_keeps_it ... ok test tests::writers::every_writer_at_once_with_the_watcher ... ok test text::tests::mixed_endings_take_the_majority ... ok test text::tests::styles_round_trip ... ok test text::tests::uniform_files_round_trip_exactly ... ok test trash::tests::a_note_without_details_still_reads ... ok test trash::tests::candidates_include_notes_and_orphan_details_with_a_bounded_scan ... ok test trash::tests::details_without_a_note_are_not_a_note ... ok test trash::tests::missing_details_never_age_trash_from_the_notes_old_mtime ... ok test trash::tests::outside_copy_has_its_details_when_the_file_first_becomes_readable ... ok test versions::tests::folds_runs_by_author_kind_and_gap ... ok test watch::native_tests::bulk_files_only_notify_the_watcher_when_the_whole_note_is_placed ... ok test watch::native_tests::native_watch_ignores_reads_but_keeps_every_kind_of_outside_change ... ok test ydoc::seed_tests::initial_seed_matches_yrs_and_accepts_later_utf16_edits ... ok test ydoc::tests::fork_and_merge_keeps_concurrent_typing ... ok test ydoc::tests::reapplying_an_update_changes_nothing ... ok test ydoc::tests::utf16_offsets ... ok test tests::writers::every_writer_at_once_loses_and_doubles_nothing ... ok test tests::event_visibility::save_outside_retry ... ok test tests::shutdown::settlement::shutdown_settlement_state_machine ... ok test result: ok. 455 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 63.52s Running unittests src/main.rs (target/debug/deps/calternal_perf-385a32f5b31a5b12) running 7 tests test args::tests::parses_trash_only_mode ... ok test scenarios::soak::tests::slope_of_a_line ... ok test scenarios::storm::tests::typing_stops_before_the_newline_ahead_of_outside_lines ... ok test stats::tests::medians_of_runs_and_pooled_singles ... ok test stats::tests::summary_max_is_the_largest_observed_sample_across_runs ... ok test scenarios::trash::tests::permanent_deletion_never_removes_a_later_runs_live_note ... ok test live::tests::frames_round_trip_and_keystrokes_stay_whole ... ok test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/storage-bench.rs (target/debug/deps/storage_bench-a8488c0b3a59d14f) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/tasks-bench.rs (target/debug/deps/tasks_bench-7a6cc7b062b3ad3f) running 2 tests test cold::tests::even_median_uses_both_middle_samples ... ok test cold::tests::median_keeps_real_growth_despite_a_storage_stall ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_plugin_hello-53ca8ca6107399a0) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_prefs-0967b265e58eb49d) running 9 tests test tests::a_change_on_one_device_reaches_the_other ... ok test tests::keys_are_an_area_then_dotted_parts ... ok test tests::a_retry_with_the_same_key_acts_once ... ok test tests::bad_keys_and_big_values_get_friendly_errors ... ok test tests::saving_the_same_value_again_is_quiet ... ok test tests::people_do_not_share_preferences ... ok test tests::quick_saves_from_two_devices_all_land ... ok test tests::set_then_get_and_survive_a_restart ... ok test tests::at_most_200_keys_but_existing_ones_can_still_change ... ok test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s Running unittests src/lib.rs (target/debug/deps/calternal_search-ff67ffa340bd9f12) running 13 tests test fuzzy::tests::distance_counts_swaps_as_one ... ok test query::tests::lone_symbols_are_ignored ... ok test query::tests::dates_cover_whole_periods ... ok test fuzzy::tests::common_typos_are_fixed ... ok test read::tests::block_ids_are_found ... ok test read::tests::renumbering_shifts_placeholders ... ok test query::tests::words_filters_and_phrases ... ok test text::tests::bigrams_cover_unspaced_scripts ... ok test read::tests::text_matches_like_the_index ... ok test read::tests::excerpts_mark_matches_in_context ... ok test text::tests::fold_drops_accents_and_case ... ok test text::tests::words_keep_indic_vowel_signs ... ok test schema::tests::an_older_index_gets_its_titles_filled ... ok test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/search.rs (target/debug/deps/search-8eb084de93ee7287) running 13 tests test an_empty_search_shows_recent_things ... ok test every_script_is_searchable ... ok test behind_answers_at_once_and_catching_up_is_announced_once ... ok test a_restart_heals_whatever_was_missed ... ok test perf_search_answer_under_five_hundred_ms ... ignored, first-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test filters_by_tag_kind_and_date ... ok test odd_input_never_breaks_search ... ok test searches_answer_while_indexing_runs ... ok test prefixes_and_typos_are_forgiven ... ok test results_show_why_they_matched_and_where ... ok test people_only_ever_find_their_own_things ... ok test titles_first_then_recent_use_then_body ... ok test the_index_follows_changes_live ... ok test result: ok. 12 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.69s Running unittests src/lib.rs (target/debug/deps/calternal_server-7e2af946e233741d) running 12 tests test live::tests::room_join_metadata_has_explicit_byte_bounds ... ok test rooms::tests::a_message_in_numbered_pieces_arrives_whole ... ok test rooms::tests::assembly_is_bounded_per_connection_and_globally_and_expiry_releases_it ... ok test rooms::tests::backpressure_refuses_the_room_before_later_checks ... ok test rooms::tests::frames_round_trip ... ok test rooms::tests::duplicated_missing_and_inconsistent_chunks_never_deliver ... ok test rooms::tests::malformed_chunk_headers_never_allow_later_checks ... ok test rooms::tests::old_membership_packets_and_results_cannot_reach_a_rejoined_room ... ok test compress::tests::big_answers_are_compressed_and_small_ones_are_not ... ok test rooms::tests::wire_nonces_reject_old_frames_joins_and_leaves_without_tombstones ... ok test rooms::tests::pending_and_joined_memberships_share_one_connection_count_bound ... ok test rooms::tests::exact_size_limit_is_delivered_but_a_larger_declaration_is_refused ... ok test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Running tests/access.rs (target/debug/deps/access-f42669473dbc3dd8) running 1 test test one_line_per_request_with_no_secrets ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/live.rs (target/debug/deps/live-cda6b637435868a7) running 6 tests test health_answers_without_signing_in ... ok test a_stranger_token_asks_for_a_refresh ... ok test signed_out_calls_get_a_friendly_refusal ... ok test errors_carry_codes_not_internals ... ok test http_to_journal_to_websocket ... ok test reconnecting_catches_up_from_a_token ... ok test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running tests/signout.rs (target/debug/deps/signout-793271c8352b0390) running 1 test test signing_a_device_out_closes_its_live_socket ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/web.rs (target/debug/deps/web-0c6c38218379bc8a) running 3 tests test files_deep_links_and_the_api_live_side_by_side ... ok test precompressed_files_are_sent_as_they_are_to_whoever_accepts_them ... ok test caching_and_security_headers_follow_what_each_file_is ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running unittests src/lib.rs (target/debug/deps/calternal_store-dc5119e9b339ecbc) running 9 tests test tests::a_store_with_a_listener_or_a_copy_is_in_use ... ok test tests::idempotency_is_saved_with_the_events_or_not_at_all ... ok test tests::commits_are_read_back_in_order ... ok test tests::a_held_reader_does_not_block_commits_or_other_readers ... ok test tests::live_entries_arrive_in_journal_order ... ok test tests::tokens_survive_a_restart_and_reject_strangers ... ok test tests::reads_are_capped ... ok test tests::old_idempotency_records_are_swept_after_commits ... ok test tests::old_idempotency_records_are_swept_when_the_store_opens ... ok test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.31s Running unittests src/lib.rs (target/debug/deps/calternal_tasks-a48f6359df24982e) running 54 tests test found::day::tests::normalized_days_round_trip_and_keep_order ... ok test found::tests::borrowed_index_matches_public_parse_for_plain_linked_and_unicode_fields ... ok test found::tests::borrowed_index_preserves_task_detection_and_excludes_task_checklists ... ok test found::tests::checkbox_forms ... ok test found::tests::days_and_times ... ok test found::tests::empty_checkbox_labels_keep_lf_and_crlf_line_numbers ... ok test found::tests::every_unrecognised_status_reads_as_open_without_changing_the_source ... ok test found::tests::borrowed_index_matches_public_parse_in_commonmark_contexts ... ok test found::tests::finds_checkboxes_everywhere_but_code_and_frontmatter ... ok test found::tests::first_link_on_the_line_is_the_target ... ok test found::tests::indexed_display_preserves_unicode_blocks_order_and_duplicate_locations ... ok test found::tests::malformed_unrelated_yaml_keeps_a_list_valued_status_visible ... ok test found::tests::lenient_reading ... ok test found::tests::linked_tasks_after_fences_keep_their_targets ... ok test found::tests::reference_titles_keep_commonmark_list_boundaries ... ok test found::tests::reads_a_task_note ... ok test found::tests::review_code_and_html_are_not_checkboxes ... ok test found::tests::unicode_marks_and_nested_boxes_survive_candidate_filtering ... ok test index::codec::tests::line_locations_round_trip ... ok test index::codec::tests::line_vectors_and_corruption ... ok test index::codec::tests::arbitrary_paths_round_trip ... ok test index::flags::tests::every_parsed_combination_round_trips ... ok test index::row::tests::shared_days_follow_parser_validity_and_preserve_raw_values ... ok test index::codec::tests::path_padding_and_raw_unicode_do_not_alias ... ok test index::row::tests::unchanged_fields_skip_writes_but_tag_only_changes_are_stored ... ok test found::tests::checkbox_fast_path_matches_commonmark ... ok running 1 test test index::tags_tests::independent_review_755_crash_between_task_and_membership_writes_is_atomic ... ok test index::tags_tests::tag_changes_and_reused_keys_keep_public_memberships_and_counts ... ok test tests::closed_tags_keep_child_groups_and_reopening_restores_sort_fields ... ok test tests::crash_child ... ok test tests::field_edits_do_not_reclassify_inbound_checkboxes ... ok test found::tests::markdown_links_and_task_items_share_commonmark_boundaries ... ok test tests::linked_boxes_stay_tracked_until_the_last_matching_task_leaves ... ok test tests::lists_groups_and_counts ... ok test index::tags_tests::independent_review_755_random_membership_matches_model_and_rolls_back ... ok test tests::kill_9_during_field_writes_loses_nothing_acknowledged ... ok test tests::outside_edits_reach_the_lists ... ok test tests::review_broken_frontmatter_refuses_update ... ok test tests::rebuild_gives_the_same_rows ... ok test tests::review_long_code_fence_hides_checkboxes ... ok test tests::review_outside_edit_during_pending_task_write ... ok test tests::review_upcoming_with_past_and_future_dates ... ok test tests::tag_membership::independent_review_755_opens_dev_format_cache_without_changing_files ... ok test tests::tag_membership::tag_lists_read_new_fields_without_rewriting_membership ... ok test tests::task_checklist_is_reindexed_when_the_note_stops_being_a_task ... ok test tests::task_notes_are_hidden_only_from_notes_lists_and_unknown_status_is_kept ... ok test tests::unreadable_frontmatter_is_shown_but_never_changed ... ok test tests::untracked_is_open_checkboxes_that_are_not_tasks ... ok test tests::update_changes_only_its_keys_and_lists_follow_at_once ... ok test update::tests::checks_values ... ok test update::tests::null_and_missing_differ ... ok test tests::a_cold_fill_gives_the_same_rows_as_the_usual_way ... ok test tests::review_live_list_has_consistent_rows_and_counts ... ok test tests::order::sql_and_rust_sort_the_same ... ok test result: ok. 54 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.80s Running unittests src/lib.rs (target/debug/deps/calternal_testkit-84605cced32b9d05) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_attachments running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_auth running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_backdrops running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_contacts running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_contacts_actions running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_core running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_daily running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_engine running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_fixtures running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_fsio running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_memory running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_migrate_v0 running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_notes running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_plugin_hello running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_prefs running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_search running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_server running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_store running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_tasks running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_testkit running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s error: 2 targets failed: `-p calternal-auth --lib` `-p calternal-fsio --lib` ```
Author
Owner

Independent verification finished. Verdict: fix first.

Reviewed #755 head 6d801fc35c against dev d83e54db across the whole chain. Tests only are pushed to review/755-tests, head edba00ec64.

  • P1: after the first usage snapshot, outside changes during background registration are invisible to subsequent admissions. The real Auth::admit test accepts one more byte after an outside write exhausts quota 10. Counter tests see growth as 0 rather than 10, and outside deletion/cross-person move as (18, 0) rather than (0, 11). Later repair cannot retract an accepted upload.
  • P2: recount skips native filenames containing invalid UTF-8 or a valid Unix backslash. The independent test counts 0 instead of 16 bytes. Keep exact native names and descriptor-relative lookup when combining with #754.
  • Passed: eventual window repair; app mutations merged with reconciliation during delayed registration; abrupt exit during registration then reopen; 1,000 randomized task membership mutations with independent model/count checks; interrupted WAL table/membership transaction recovery; dev-format cache migration with unchanged note text and identity.

PR #754 head 967dd3e892 overlaps in Cargo.lock, crates/fsio/Cargo.toml, crates/fsio/src/beneath.rs, crates/fsio/src/usage.rs and crates/fsio/src/usage/watch.rs. merge-tree exits 1 with conflicts in all five plus docs/perf/web.md. The earlier overlap comment lists every shared function and how to combine them. Retain #754 containment/inode accounting and adapt the iteration optimization; fix trustworthy admission during registration in the combined implementation.

Gates: fmt exit 0; workspace clippy with -D warnings exit 0; full workspace tests exit 101, with 1,222 passed, 4 failed, 20 ignored. All four failures are the new quota regressions above. The known Tasks abrupt-stop test passed on its first run; no #757 rerun was needed. A final clippy check first caught the test's intentional std::fs::write; a test-only allowance fixed that lint, with no behavior change, and clippy passed again.

No perf workloads were run, so the cold-growth and startup p95 claims are not independently certified. These tests cover filesystem entry points and the actual admission policy, not every HTTP scheduling interleaving or power loss. No product changes, merges or deployments. The intentionally failing regressions remain enabled.

Full gate output verbatim:

Independent verification finished. Verdict: fix first. Reviewed #755 head 6d801fc35c08c7739f0038793a4335fb6f36e43b against dev d83e54db across the whole chain. Tests only are pushed to [review/755-tests](https://git.kayg.org/kayg/calternal/src/branch/review/755-tests), head edba00ec64f3afe5780caade7637cb4ffed5cffa. - P1: after the first usage snapshot, outside changes during background registration are invisible to subsequent admissions. The real Auth::admit test accepts one more byte after an outside write exhausts quota 10. Counter tests see growth as 0 rather than 10, and outside deletion/cross-person move as (18, 0) rather than (0, 11). Later repair cannot retract an accepted upload. - P2: recount skips native filenames containing invalid UTF-8 or a valid Unix backslash. The independent test counts 0 instead of 16 bytes. Keep exact native names and descriptor-relative lookup when combining with #754. - Passed: eventual window repair; app mutations merged with reconciliation during delayed registration; abrupt exit during registration then reopen; 1,000 randomized task membership mutations with independent model/count checks; interrupted WAL table/membership transaction recovery; dev-format cache migration with unchanged note text and identity. PR #754 head 967dd3e8929543813ca61545ca9b81685758ab40 overlaps in Cargo.lock, crates/fsio/Cargo.toml, crates/fsio/src/beneath.rs, crates/fsio/src/usage.rs and crates/fsio/src/usage/watch.rs. merge-tree exits 1 with conflicts in all five plus docs/perf/web.md. The earlier overlap comment lists every shared function and how to combine them. Retain #754 containment/inode accounting and adapt the iteration optimization; fix trustworthy admission during registration in the combined implementation. Gates: fmt exit 0; workspace clippy with -D warnings exit 0; full workspace tests exit 101, with 1,222 passed, 4 failed, 20 ignored. All four failures are the new quota regressions above. The known Tasks abrupt-stop test passed on its first run; no #757 rerun was needed. A final clippy check first caught the test's intentional std::fs::write; a test-only allowance fixed that lint, with no behavior change, and clippy passed again. No perf workloads were run, so the cold-growth and startup p95 claims are not independently certified. These tests cover filesystem entry points and the actual admission policy, not every HTTP scheduling interleaving or power loss. No product changes, merges or deployments. The intentionally failing regressions remain enabled. Full gate output verbatim: - https://git.kayg.org/kayg/calternal/pulls/755#issuecomment-68909 - https://git.kayg.org/kayg/calternal/pulls/755#issuecomment-68910 - https://git.kayg.org/kayg/calternal/pulls/755#issuecomment-68911 - https://git.kayg.org/kayg/calternal/pulls/755#issuecomment-68912 - https://git.kayg.org/kayg/calternal/pulls/755#issuecomment-68913
Author
Owner

Starting the combination on branch perf/cold-growth-on-754, from #755 base head 6d801fc3 onto #754 head e8a99a6f. I will preserve reviewer tests, fix admission before watch registration, and run the required correctness and perf gates. Fetching current refs before making changes.

Starting the combination on branch perf/cold-growth-on-754, from #755 base head 6d801fc3 onto #754 head e8a99a6f. I will preserve reviewer tests, fix admission before watch registration, and run the required correctness and perf gates. Fetching current refs before making changes.
Author
Owner

Combined #755 with #754 head e8a99a6f and merged reviewer tests edba00ec. Conflicting resolver, scan, inode accounting and recovery files retain #754 implementation, including its reviewer branches. Native invalid UTF-8 and backslash names now pass without a separate scanner. The reviewer tests were adapted only to the replacement background-state mutex.

Admission now recounts the uploading Home through the bounded resolver on every admission before native registration and its closing recount succeed. This deliberately does not cache across unobserved outside changes: those cannot advance an application generation. Readiness and reads still do not wait for registration. Fallback keeps fresh admission enabled until coverage recovers.

Targeted regression output verbatim:

   Compiling rustix v1.1.5
   Compiling linux-raw-sys v0.12.1
   Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 5.54s
     Running unittests src/lib.rs (target/debug/deps/calternal_fsio-bb481d4d69cae6d2)

running 5 tests
test usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames ... ok
test usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota ... ok
test usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration ... ok

running 1 test
test usage::watch::independent_review_755::registration_recount_repairs_window_mutations_and_merges_app_writes ... ok
test usage::watch::independent_review_755::abrupt_stop_during_registration_reopens_acknowledged_files ... ok

test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 104 filtered out; finished in 0.00s

     Running tests/review_754d_mount.rs (target/debug/deps/review_754d_mount-42f3032f32959351)

running 0 tests

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


running 1 test
test quota::independent_review_755::second_upload_during_registration_must_count_outside_growth ... ok

Full workspace and performance checks follow; these targeted results are not performance certification.

Combined #755 with #754 head e8a99a6f and merged reviewer tests edba00ec. Conflicting resolver, scan, inode accounting and recovery files retain #754 implementation, including its reviewer branches. Native invalid UTF-8 and backslash names now pass without a separate scanner. The reviewer tests were adapted only to the replacement background-state mutex. Admission now recounts the uploading Home through the bounded resolver on every admission before native registration and its closing recount succeed. This deliberately does not cache across unobserved outside changes: those cannot advance an application generation. Readiness and reads still do not wait for registration. Fallback keeps fresh admission enabled until coverage recovers. Targeted regression output verbatim: ``` Compiling rustix v1.1.5 Compiling linux-raw-sys v0.12.1 Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio) Finished `test` profile [unoptimized + debuginfo] target(s) in 5.54s Running unittests src/lib.rs (target/debug/deps/calternal_fsio-bb481d4d69cae6d2) running 5 tests test usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames ... ok test usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota ... ok test usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration ... ok running 1 test test usage::watch::independent_review_755::registration_recount_repairs_window_mutations_and_merges_app_writes ... ok test usage::watch::independent_review_755::abrupt_stop_during_registration_reopens_acknowledged_files ... ok test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 104 filtered out; finished in 0.00s Running tests/review_754d_mount.rs (target/debug/deps/review_754d_mount-42f3032f32959351) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 2 filtered out; finished in 0.00s running 1 test test quota::independent_review_755::second_upload_during_registration_must_count_outside_growth ... ok ``` Full workspace and performance checks follow; these targeted results are not performance certification.
Author
Owner

The first full workspace run found an integration requirement retained by #754: known storage measurement failures must block all admissions until a full successful recount clears Health. The new Home-only path initially bypassed an unrelated retained failure. Evidence verbatim:


     Running tests/quota_counter.rs (target/debug/deps/quota_counter-f48b0804a4693eb3)

running 4 tests
test perf_signin_during_large_recount_under_fifty_ms ... ignored, sign-in latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test small_uploads_spend_the_same_allowance_as_large_uploads ... ok
test health_reports_retained_storage_measurement_failures ... FAILED
test signin_finishes_before_a_large_recount ... ok

failures:

---- health_reports_retained_storage_measurement_failures stdout ----

thread 'health_reports_retained_storage_measurement_failures' (171918) panicked at crates/auth/tests/quota_counter.rs:156:5:
assertion failed: a.auth.admit(UserId::parse(&person).unwrap(), 1).await.is_err()
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace


failures:
    health_reports_retained_storage_measurement_failures

test result: FAILED. 2 passed; 1 failed; 1 ignored; 0 measured; 0 filtered out; finished in 4.16s

error: test failed, to rerun pass `-p calternal-auth --test quota_counter`

I preserved the test and restored that contract: admission retries a full recount when there is a retained failure, then uses a fresh per-Home recount while registration is incomplete. No failure is cleared by a scoped success. The complete workspace gate will be run again.

The first full workspace run found an integration requirement retained by #754: known storage measurement failures must block all admissions until a full successful recount clears Health. The new Home-only path initially bypassed an unrelated retained failure. Evidence verbatim: ``` Running tests/quota_counter.rs (target/debug/deps/quota_counter-f48b0804a4693eb3) running 4 tests test perf_signin_during_large_recount_under_fifty_ms ... ignored, sign-in latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test small_uploads_spend_the_same_allowance_as_large_uploads ... ok test health_reports_retained_storage_measurement_failures ... FAILED test signin_finishes_before_a_large_recount ... ok failures: ---- health_reports_retained_storage_measurement_failures stdout ---- thread 'health_reports_retained_storage_measurement_failures' (171918) panicked at crates/auth/tests/quota_counter.rs:156:5: assertion failed: a.auth.admit(UserId::parse(&person).unwrap(), 1).await.is_err() note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace failures: health_reports_retained_storage_measurement_failures test result: FAILED. 2 passed; 1 failed; 1 ignored; 0 measured; 0 filtered out; finished in 4.16s error: test failed, to rerun pass `-p calternal-auth --test quota_counter` ``` I preserved the test and restored that contract: admission retries a full recount when there is a retained failure, then uses a fresh per-Home recount while registration is incomplete. No failure is cleared by a scoped success. The complete workspace gate will be run again.
Author
Owner

Full workspace tests at head 30f65caf: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed on the first run; no #757 rerun was needed. Output verbatim, part 1/4:

   Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio)
   Compiling calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server)
   Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes)
   Compiling calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops)
   Compiling calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments)
   Compiling calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth)
   Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0)
   Compiling calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs)
   Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks)
   Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions)
   Compiling calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily)
   Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf)
   Compiling calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 21.11s
     Running unittests src/main.rs (target/debug/deps/calternal-a3b50c16e6a6ab3c)

running 32 tests
test admin::tests::a_stop_sent_before_subscribing_is_still_seen ... ok
test admin::tests::an_active_request_gets_a_graceful_shutdown_window ... ok
test admin::tests::shutdown_stops_a_client_waiting_on_a_partial_request ... ok
test args::tests::defaults_and_flags ... ok
test args::tests::dev_user_never_on_a_public_address ... ok
test args::tests::fix_commands ... ok
test args::tests::migrate_v0 ... ok
test args::tests::origin_defaults_to_the_local_port ... ok
test args::tests::setup_and_re_pair_are_explicit ... ok
test args::tests::state_defaults_to_resolved_data_and_flags_override_environment ... ok
test args::tests::user_create ... ok
test args::tests::user_recover ... ok
test args::tests::web_folder ... ok
test admin::tests::a_restart_waits_out_an_admin_request_longer_than_ten_seconds ... ok
test isolation::bob_cannot_reach_alices_attachments ... ok
test isolation::in_process_server_shutdown_releases_both_roots_200x_under_load ... ignored, stress gate; run explicitly during release validation
test isolation::people::backdrops_spend_the_same_counter_as_small_attachments ... ok
test isolation::contacts_and_tasks_in_one_home_keep_their_own_members ... ok
test isolation::people::duplicate_upload_at_quota_must_not_spend_bytes_twice ... ok
test isolation::people::normal_token_failures_do_not_log_or_persist_plaintext ... ok
test isolation::people::real_upload_storm_notes_trash_restore_and_delete_usage ... ok
test isolation::people_actions_hide_real_ids_from_members_other_users_and_anonymous_callers ... ok
test isolation::bob_cannot_join_alices_note_room ... ok
test isolation::quota_refuses_large_and_small_uploads_while_notes_still_save ... ok
test isolation::bob_reaches_nothing_of_alices_through_any_action ... ok
test isolation::renaming_a_task_retargets_task_and_contact_links_once ... ok
test isolation::split_storage_keeps_originals_and_databases_on_their_disks ... ok
test plugins::tests::contract_matches_the_server ... ok
test shutdown_io::tests::shutdown_finishes_an_idle_read_and_keeps_response_writes_open ... ok
test shutdown_io::tests::shutdown_bounds_response_writes_to_a_peer_that_stops_reading ... ok
test isolation::people::every_action_obeys_person_visibility ... ok
test isolation::randomized_home_shutdown_releases_both_roots ... ok

test result: ok. 31 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.82s

     Running tests/attachments_crash.rs (target/debug/deps/attachments_crash-cd2bbef03748dfba)

running 2 tests
test kill_nine_mid_upload_leaves_nothing_half_written ... ok
test a_big_upload_streams_in_bounded_memory ... ok

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

     Running tests/contacts_live.rs (target/debug/deps/contacts_live-75709d75740a5aef)

running 2 tests
test a_phone_renames_a_contact_while_someone_types_in_a_linking_note ... ok
test a_live_h1_collision_keeps_contact_and_incoming_link_identity ... ok

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

     Running tests/fix_tz_live.rs (target/debug/deps/fix_tz_live-0737e923ed502e77)

running 2 tests
test fix_without_a_running_server_says_so ... ok
test strip_tz_markers_on_a_live_home_with_a_client_typing ... ok

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

     Running tests/notes_crash.rs (target/debug/deps/notes_crash-353c659c2c8c58ef)

running 3 tests
test kill_nine_mid_append_on_a_long_note ... ok
test kill_nine_mid_tag_rename_renames_each_tag_once ... ok
test kill_nine_never_loses_or_doubles ... ok

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

     Running tests/notes_crash_typing.rs (target/debug/deps/notes_crash_typing-a3186d5f751d22cc)

running 1 test
test kill_nine_while_people_type_loses_and_doubles_nothing ... ok

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

     Running tests/notes_live.rs (target/debug/deps/notes_live-23dad727506cebb5)

running 2 tests
test joining_a_missing_note_fails_politely ... ok
test type_over_the_websocket_and_read_it_back ... ok

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

     Running tests/prefs_live.rs (target/debug/deps/prefs_live-2a45e14c9a3246f1)

running 1 test
test preferences_are_saved_checked_and_kept ... ok

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

     Running tests/search_live.rs (target/debug/deps/search_live-f7802571dcef0e22)

running 2 tests
test perf_live_empty_search_under_one_second ... ignored, live empty-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test notes_from_everywhere_are_found ... ok

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

     Running tests/startup.rs (target/debug/deps/startup-d7666ef4a67395d8)

running 6 tests
test perf_startup_under_500ms ... ignored, startup latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test refuses_dev_user_on_a_public_address ... ok
test refuses_plain_http_on_a_public_origin ... ok
test recover_only_knows_real_people ... ok
test a_new_server_prints_a_setup_token ... ok
test answers_after_launch ... ok

test result: ok. 5 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.05s

     Running tests/startup_quota.rs (target/debug/deps/startup_quota-ff7d3c3723709dd3)

running 1 test
test first_upload_after_healthz_enforces_existing_home_usage ... ok

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

     Running tests/storage_startup.rs (target/debug/deps/storage_startup-b157873ab6d847a5)

running 11 tests
test create_refuses_unpaired_notes_or_databases_before_creating_other_root ... ok
test a_lock_held_past_the_longest_grace_still_fails_startup ... ok
test missing_home_refuses_without_creating_directory_or_lock ... ok
test legacy_history_read_only_and_invalid_state_are_refused ... ok
test original_storage_startup_scenario_repeats_100x_under_load ... ignored, stress gate; run explicitly during release validation
test both_missing_markers_with_existing_split_data_require_confirmed_re_pair ... ok
test missing_state_never_recreates_databases_even_with_create ... ok
test single_root_upgrade_backup_split_cache_delete_and_rollback ... ok
test startup_waits_for_a_previous_server_to_release_both_roots ... ok
test roots_must_keep_their_persistent_partner_and_admin_must_confirm ... ok
test both_roots_remain_exclusively_locked ... ok

test result: ok. 10 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 10.04s

     Running unittests src/lib.rs (target/debug/deps/calternal_attachments-d58f6af211aebaca)

running 22 tests
test serve::tests::dispositions_quote_safely ... ok
test serve::tests::ranges ... ok
test serve::tests::only_plain_visible_paths_are_served ... ok
test tests::http::a_connection_that_breaks_off_leaves_nothing ... ok
test tests::http::check_finds_only_your_own_files ... ok
test tests::http::an_upload_lands_in_its_dated_folder_and_is_served_back ... ok
test tests::http::a_retry_with_the_same_key_never_makes_a_second_copy ... ok
test tests::http::review_754b_utf8_case_and_normalization_collision_behavior_is_preserved ... ok
test tests::http::paths_that_climb_out_of_the_home_are_not_found ... ok
test tests::http::names_can_not_steer_where_a_file_goes ... ok
test tests::http::review_754b_upload_preserves_raw_names_and_real_replacement_character_collisions ... ok
test tests::http::the_sweep_removes_what_a_crash_left_and_spares_live_uploads ... ok
test tests::http::uploads_need_a_session_our_page_and_a_key ... ok
test tests::sniffing::days_are_strict ... ok
test tests::sniffing::invalid_utf8_names_do_not_claim_replacement_character_names ... ok
test tests::sniffing::names_are_kept_but_made_safe ... ok
test tests::sniffing::pictures_and_videos_go_to_photos ... ok
test tests::sniffing::text_types_come_from_the_extension_and_html_never_runs ... ok
test tests::sniffing::the_name_never_decides_a_binary_type ... ok
test tests::http::the_limit_holds_while_streaming_without_a_length ... ok
test tests::http::the_same_file_again_says_already_uploaded_and_keeps_one_copy ... ok
test tests::http::unsafe_types_are_downloads_with_a_strict_policy ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_auth-c6ffb9bdc96505f7)

running 30 tests
test config::tests::origins ... ok
test db::tests::a_version_1_database_gets_passkey_names ... ok
test db::tests::existing_database_keeps_people_credentials_and_sessions ... ok
test http::cookie_tests::session_cookie_is_host_only_and_secure ... ok
test db::tests::opens_twice_and_keeps_schema ... ok
test http::proxy_tests::forwarding_stops_at_first_untrusted_hop_and_rejects_malformed_chains ... ok
test invite_key::tests::lookup_uses_a_separate_derived_key_and_depends_on_the_server_key ... ok
test invite_redeem::tests::expiry_and_clock_rollback_use_the_same_validation_path ... ok
test invite_redeem::tests::invalid_invite_classes_perform_one_lookup_and_one_secret_comparison ... ok
test invite_redeem::tests::invalid_invites_do_not_reveal_name_conflicts ... ok
test limit::reliability_tests::backoff_expires_is_capped_and_refusals_do_not_extend_it ... ok
test limit::reliability_tests::buckets_are_independent_and_bounded ... ok
test invite_key::tests::key_round_trips_but_modified_ciphertext_and_another_id_fail ... ok
test limit::reliability_tests::full_map_evicts_least_recent_without_refusing_new_sources ... ok
test limit::reliability_tests::target_capacity_preserves_live_budgets_and_evicts_only_oldest_expired ... ok
test passkeys::tests::ids_round_trip ... ok
test passkeys::tests::names_are_trimmed_short_and_never_empty ... ok
test ceremony::tests::anonymous_pool_stays_bounded_and_evicts_oldest ... ok
test ceremony::tests::full_pool_refuses_foreign_source_without_discarding_live_prompt ... ok
test session::tests::names_are_cleaned ... ok
test setup::tests::names ... ok
test setup::tests::names_reject_invisible_and_normalize_nfc ... ok
test quota::independent_review_755::second_upload_during_registration_must_count_outside_growth ... ok
test setup::tests::recover_needs_a_known_person ... ok
test setup::tests::usernames ... ok
test token::tests::junk_is_not_a_token ... ok
test token::tests::setup_tokens_round_trip_through_pasting ... ok
test setup::tests::recovery_requires_exact_username_or_uuid_never_display_name ... ok
test setup::tests::cli_creation_refuses_admin_name_confusables ... ok
test limit::reliability_tests::source_churn_cannot_reset_target_budget ... ok

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

     Running tests/abuse.rs (target/debug/deps/abuse-55dc96433ab57c65)

running 12 tests
test bad_json_and_unknown_fields_are_refused ... ok
test forged_sessions_get_nowhere ... ok
test junk_setup_tokens_are_refused_then_rate_limited ... ok
test anonymous_prompt_flood_preserves_login_setup_and_add ... ok
test duplicate_session_cookies_never_choose_an_identity ... ok
test login_source_limit_does_not_block_another_client ... ok
test non_json_requests_are_refused ... ok
test nothing_about_the_server_leaks_before_sign_in ... ok
test one_source_cannot_lock_out_another_and_cannot_spoof_forwarding ... ok
test other_sites_cannot_act_for_you ... ok
test oversized_bodies_are_refused ... ok
test garbage_credentials_never_crash ... ok

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

     Running tests/create.rs (target/debug/deps/create-073bf952f17a5ede)

running 6 tests
test an_earlier_first_owner_token_stops_working ... ok
test an_expired_enrolment_token_is_refused ... ok
test a_created_person_enrolls_their_first_passkey_and_is_the_same_person ... ok
test nothing_about_the_person_leaks_before_sign_in ... ok
test names_must_be_usable_and_unique ... ok
test an_enrolment_token_works_exactly_once_under_a_storm ... ok

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

     Running tests/groups.rs (target/debug/deps/groups-90b4782e7dd6e580)

running 1 test
test shared_groups_control_visibility_and_managers_only_edit_local_members ... ok

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

     Running tests/host_cookies.rs (target/debug/deps/host_cookies-6b0c997d56c59693)

running 3 tests
test old_name_is_ignored_and_cleared_once_without_touching_host_session ... ok
test duplicate_host_headers_and_stale_requests_never_clear_new_session ... ok
test upgrading_schema_six_removes_cookie_state_and_keeps_passkeys ... ok

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

     Running tests/invites.rs (target/debug/deps/invites-e9c6f1bddf277840)

running 8 tests
test invite_finish_rechecks_admin_names_after_role_changes ... ok
test invite_admin_names_cannot_be_impersonated_and_failure_preserves_invite ... ok
test invite_redemption_joins_its_groups_and_other_inviters_cannot_copy_it ... ok
test invite_can_be_copied_after_restart_and_only_one_racing_passkey_wins ... ok
test losing_the_key_does_not_replace_it_and_invite_secrets_never_enter_action_history ... ok
test wrong_expired_used_and_revoked_invites_give_one_answer ... ok
test legacy_invite_indexes_upgrade_atomically_and_keep_copy_and_redemption ... ok
test invite_redemption_reaches_a_visible_admin_but_not_an_unrelated_member ... ok

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

     Running tests/isolation.rs (target/debug/deps/isolation-8f6869b624859b1e)

running 3 tests
test a_cookie_sent_from_another_sites_page_does_not_count ... ok
test another_persons_passkey_prompt_cannot_be_used_or_cancelled ... ok
test devices_and_passkeys_of_another_person_are_not_found ... ok

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

     Running tests/login.rs (target/debug/deps/login-869d6dadbd3d3382)

running 11 tests
test a_sign_in_answer_cannot_be_replayed ... ok
test bearer_tokens_work_like_cookies ... ok
test foreign_status_cannot_sign_the_browser_out ... ok
test an_unknown_passkey_is_refused ... ok
test revoking_another_device_signs_it_out ... ok
test sign_in_with_a_passkey_creates_a_new_installation ... ok
test logout_revokes_the_installation_and_rejects_live_cookies ... ok
test signing_in_shows_up_live_on_another_device ... ok
test sign_out_ends_the_session_immediately ... ok
test signing_out_shows_up_live_on_another_device ... ok
test sessions_expire_when_unused ... ok

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

     Running tests/migration.rs (target/debug/deps/migration-1accde5b0ec134b7)

running 1 test
test schema_two_copy_keeps_real_credentials_sessions_and_recovery ... ok

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

     Running tests/passkeys.rs (target/debug/deps/passkeys-15e16beb8d0367d6)

running 7 tests
test an_empty_name_is_refused_and_a_long_one_is_cut ... ok
test add_rename_and_remove_each_leave_a_journal_event ... ok
test a_removed_passkey_that_is_gone_or_unknown_is_not_found ... ok
test the_first_passkey_is_listed_with_the_device_it_was_made_on ... ok
test adding_needs_a_sign_in_and_an_add_prompt_works_once ... ok
test the_last_passkey_cannot_be_removed ... ok
test the_same_device_cannot_be_added_twice ... ok

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

     Running tests/people.rs (target/debug/deps/people-4e83322d17dda982)

running 4 tests
test first_owner_has_capabilities_and_cannot_demote_the_last_admin ... ok
test member_cannot_change_roles_and_new_capability_sets_work ... ok
test promotion_cannot_create_confusable_admin_names ... ok
test two_admins_racing_to_demote_themselves_leave_one_admin ... ok

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

     Running tests/quota_counter.rs (target/debug/deps/quota_counter-f48b0804a4693eb3)

running 4 tests
test perf_signin_during_large_recount_under_fifty_ms ... ignored, sign-in latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test small_uploads_spend_the_same_allowance_as_large_uploads ... ok
test health_reports_retained_storage_measurement_failures ... ok
test signin_finishes_before_a_large_recount ... ok

test result: ok. 3 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 4.25s

     Running tests/reliability_review.rs (target/debug/deps/reliability_review-fe810f4afa6e8922)

running 22 tests
test authentication_database_does_not_wait_for_general_blocking_workers ... ok
test anonymous_flood_must_not_evict_other_persons_prompt ... ok
test crash_child_exit ... ignored
test concurrent_quota_admissions_do_not_overspend ... ok
test default_twenty_mib_stream_boundary ... ok
test directory_moves_keep_child_accounting_and_deletes_correct ... ok
test counter_concurrent_mutations_drift_and_restart ... ok
test independent_login_latency_during_recount ... ignored, latency budget runs on the perf VM via perf/auth-latency-vm.sh
test ipv6_prefix_must_share_budget ... ok
test directory_move_during_initial_recount_must_track_later_deletes ... ok
test names_normalization_recovery_and_invisibles ... ok
test ipv6_rotation_must_not_lock_out_new_source ... ok
test normalized_setup_token_must_share_target_budget ... ok
test perf_ipv6_source_rotation_under_fifty_five_seconds ... ignored, IPv6 source-churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test restart_recovers_disk_update_missing_counter_notification ... ok
test repeated_bad_signatures_for_one_account_must_share_budget ... ok
test source_isolation_and_untrusted_forwarding ... ok
test slow_uploads_must_not_starve_authentication_blocking_pool ... ok
test trusted_proxy_uses_nearest_untrusted_hop ... ok
test streamed_slow_exact_over_abort_and_quota_replacement ... ok
test account_owner_can_sign_in_after_backoff_and_success_resets_failures ... ok
test independent_login_completes_before_recount ... ok

test result: ok. 19 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 1.48s

     Running tests/reliability_round3.rs (target/debug/deps/reliability_round3-9c5194112c2287db)

running 12 tests
test attachment_and_backdrop_routes_share_caps_and_cancel_cleanup ... ok
test canonical_recovery_token_variants_share_one_target_without_spending_other_tokens ... ok
test fifty_slow_upload_attempts_preserve_full_signin_and_status ... ok
test ipv4_mapped_v6_and_native_v4_share_budget_but_adjacent_prefix_does_not ... ok
test over_ten_thousand_distinct_source_buckets_still_admit_new_clients ... ok
test perf_signin_and_status_during_slow_uploads_under_fifty_ms ... ignored, sign-in and status latency budgets run on the perf VM via perf/ordinary-latency-vm.sh
test perf_source_bucket_churn_under_fifty_five_seconds ... ignored, source-bucket churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test rename_collision_and_replacement_keep_correct_usage ... ok
test setup_target_budget_survives_more_than_ten_thousand_sources ... ok
test idle_deadline_cleans_files_and_reopens_each_person_capacity ... ok
test attachment_slow_bodies_must_not_hold_all_general_blocking_workers ... ok
test maximum_account_backoff_releases_owner_despite_refused_retries has been running for over 60 seconds
test maximum_account_backoff_releases_owner_despite_refused_retries ... ok

test result: ok. 10 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 123.85s

     Running tests/security_regressions.rs (target/debug/deps/security_regressions-eafb2d2ddad42fa3)

running 15 tests
test eight_parallel_redeemers_create_exactly_one_account ... ok
test concurrent_key_creation_publishes_one_complete_key ... ok
test every_action_rejects_anonymous_expired_and_unprivileged_writes ... ok
test groups_manager_must_obey_single_person_visibility_rule ... ok
test expiry_during_passkey_registration_consumes_nothing ... ok
test invite_lookup_must_use_keyed_hash ... ok
test new_modules_are_small_and_documented ... ok
test malformed_token_must_have_same_generic_response ... ok
test perf_invite_failure_timing_classes_within_ratio ... ignored, invite failure timing budget runs on the perf VM via perf/ordinary-latency-vm.sh
test key_permissions_missing_corrupt_and_no_plaintext_history ... ok
test revoked_expired_used_and_wrong_fail_equally ... ok
test origin_dev_schema_migrates_idempotently_and_rolls_back_partial_failure ... ok
test two_admins_demoting_each_other_keep_one_manager ... ok
test quota_serializes_large_placements_and_tracks_delete_trash ... ok
test all_five_invite_failures_have_the_same_body_and_status ... ok

test result: ok. 14 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.18s

     Running tests/setup.rs (target/debug/deps/setup-012b11e547011a67)

running 8 tests
test a_restart_replaces_the_first_owner_token ... ok
test a_finished_prompt_cannot_be_replayed ... ok
test first_owner_needs_a_name ... ok
test a_token_works_exactly_once_under_a_storm ... ok
test first_owner_signs_up_with_the_printed_token ... ok
test session_cookie_is_locked_down ... ok
test an_expired_setup_token_is_refused ... ok
test recovery_adds_a_new_passkey_for_the_same_person ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_backdrops-9bb1b7445f355593)

running 25 tests
test tests::a_photo_unknown_to_us_is_looked_up ... ok
test tests::a_stricter_attachment_limit_also_bounds_backdrops ... ok
test tests::an_answer_that_is_not_a_picture_is_refused_and_not_kept ... ok
test tests::an_upload_is_private_to_the_person_who_made_it ... ok
test tests::an_upload_is_kept_once_and_served_back ... ok
test tests::changes_need_our_own_page_and_a_signed_in_person ... ok
test tests::bad_ids_never_reach_the_disk_or_the_network ... ok
test tests::picking_is_reported_to_unsplash_once ... ok
test tests::pictures_are_proxied_cached_and_never_given_the_key ... ok
test tests::pictures_from_other_hosts_are_refused ... ok
test tests::search_lists_photos_with_our_own_addresses_and_credit ... ok
test tests::nobody_can_read_or_list_someone_elses_uploads ... ok
test tests::storage_cache::split_cache_deletion_refetches_upstream_and_keeps_original_upload ... ok
test tests::the_real_client_sends_the_key_and_caps_the_size ... ok
test tests::the_real_client_speaks_https_to_unsplash ... ignored, needs the internet
test tests::the_same_search_is_answered_once ... ok
test tests::too_many_pixels_are_refused_but_files_within_the_byte_limit_work ... ok
test tests::unsplash_running_out_of_requests_is_a_plain_slow_down ... ok
test tests::uploads_are_checked_by_content_not_by_what_they_claim ... ok
test tests::without_a_key_photos_are_off_but_uploads_work ... ok
test uploads::reliability_tests::idle_upload_removes_temporary_file_and_releases_admission ... ok
test tests::the_cache_drops_the_oldest_files_past_its_cap ... ok
test tests::backdrop_quota_refuses_new_files_and_releases_space_on_delete ... ok
test tests::streaming_upload_stops_at_byte_limit_and_leaves_no_artifact ... ok
test uploads::reliability_tests::upload_admission_is_bounded_and_cancellation_restores_capacity ... ok

test result: ok. 24 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.06s

     Running unittests src/lib.rs (target/debug/deps/calternal_contacts-ee6c1c39ad0c7c23)

running 1 test
test note::related_links_tests::only_the_cards_related_group_names_related_people ... ok

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

     Running tests/apple.rs (target/debug/deps/apple-2e4be127f63ba73a)

running 4 tests
test apple_rewrite_keeps_canonical_extensions_and_takes_real_edits ... ok
test unchanged_duplicate_ungrouped_occurrences_merge ... ok
test client_deletion_requires_sent_field_and_uid_is_immutable ... ok
test unsent_note_changes_survive_and_concurrent_edits_return_history ... ok

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

     Running tests/break_codec.rs (target/debug/deps/break_codec-aafcfb31f8b66aed)

running 11 tests
test envelope_checks_and_original_copy_reject_ambiguous_or_edited_state ... ok
test bare_properties_and_ignored_parameter_properties_decode_the_same_values ... ok
test folded_and_unfolded_utf8_lines_keep_values_and_their_original_bytes ... ok
test escaped_separator_parity_keeps_component_and_list_boundaries ... ok
test canonical_note_comparison_checks_every_byte_and_falls_back_for_local_sections ... ok
test multiline_google_custom_labels_cannot_create_other_card_groups ... ok
test quoted_parameter_delimiters_and_value_colons_keep_their_meaning ... ok
test typed_reordering_and_value_tag_changes_use_the_exported_wire_projection ... ok
test component_and_list_comparisons_preserve_empty_parts_and_noncanonical_escapes ... ok
test original_and_edited_note_snapshots_both_preserve_later_typed_edits ... ok
test mixed_rendered_values_keep_all_other_bytes_during_a_client_edit ... ok

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

     Running tests/break_generated.rs (target/debug/deps/break_generated-820fb6d4d3d4733d)

running 9 tests
test fixed_seed_generated_shapes_include_every_reaudit_case ... ok
test arbitrary_wire_and_note_inputs_preserve_bytes_or_explain_rejection ... ok
test independent_vendor_shaped_cards_keep_foldings_metadata_and_unknowns ... ok
test generated_notes_shapes_and_repeated_fact_edits_round_trip ... ok
test synthetic_vendor_corpus_is_bidirectionally_byte_identical ... ok
test five_megabyte_notes_survive_both_conversions ... ok
test generated_valid_cards_and_messy_notes_keep_every_field ... ok
test megabyte_value_ten_thousand_visible_fields_and_ten_megabyte_photo ... ok
test ten_thousand_new_custom_labels_get_unique_groups_and_round_trip ... ok

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

     Running tests/break_inventory.rs (target/debug/deps/break_inventory-3574ff8515f5622c)

running 1 test
test every_inventory_property_survives_a_neighbour_edit ... ok

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

     Running tests/break_labels.rs (target/debug/deps/break_labels-2a15e9f3957048ff)

running 2 tests
test names_use_human_order_even_when_vendor_properties_are_reordered ... ok
test builtin_labels_show_the_words_on_the_phone_and_recover_original_codes ... ok

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

     Running tests/break_layout.rs (target/debug/deps/break_layout-c5075a452332b1c4)

running 27 tests
test ambiguous_simultaneous_colon_edit_returns_phone_group_and_history ... ok
test a_phone_note_containing_h2_or_h1_round_trips ... ok
test colon_label_renames_survive_a_following_client_edit ... ok
test colon_bearing_label_edits_change_only_the_label_and_value_edits_only_the_value ... ok
test duplicate_structured_name_parts_are_unrepresentable ... ok
test company_and_department_edits_share_one_org_in_either_note_order ... ok
test crlf_notes_preserve_original_escape_spelling_and_do_not_create_merge_conflicts ... ok
test entering_a_birthday_year_clears_the_apple_omit_year_flag ... ok
test first_list_ends_at_a_paragraph_and_second_list_stays_local ... ok
test later_notes_headings_are_phone_text ... ok
test colons_delimiters_and_unicode_keep_their_exact_wire_values ... ok
test empty_visible_properties_are_not_deleted_on_an_unchanged_round_trip ... ok
test flat_repeatable_lines_stay_and_are_reported ... ok
test multiline_labels_never_turn_into_unreported_fields ... ok
test missing_h1_explains_rejection_and_empty_card_is_allowed ... ok
test missing_wire_display_name_is_not_silently_created_by_a_round_trip ... ok
test multiple_unrepresentable_document_fields_explain_rejection ... ok
test note_headings_and_crlf_do_not_change_plain_text ... ok
test notes_heading_after_a_local_h1_owns_the_tail ... ok
test multiple_edits_to_indistinguishable_occurrences_do_not_guess_hidden_parameters ... ok
test org_hierarchy_is_one_fact_and_unchanged_components_stay_lossless ... ok
test tags_keep_list_boundaries_when_a_category_contains_comma_space ... ok
test unchanged_values_that_differ_only_by_trailing_spaces_keep_both_occurrences ... ok
test utf8_bom_is_document_framing ... ok
test unicode_names_keep_normalisation_scripts_direction_and_joiners ... ok
test one_property_edit_changes_only_its_original_logical_line ... ok
test markdown_whitespace_and_bullets_do_not_edit_the_phone ... ok

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

     Running tests/break_links.rs (target/debug/deps/break_links-1cfb864ce45a27c1)

running 4 tests
test a_colon_in_a_related_name_is_text_and_an_explicit_uri_stays_a_uri ... ok
test escaped_closing_brackets_inside_a_name_are_not_link_delimiters ... ok
test related_brackets_and_angle_brackets_are_valid_markdown_and_editable ... ok
test a_plain_name_that_looks_like_a_link_stays_that_name ... ok

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

     Running tests/break_merge.rs (target/debug/deps/break_merge-525543662f577ab1)

running 16 tests
test crlf_new_group_is_written_once_for_multiple_incoming_values ... ok
test distinct_repeated_types_return_quiet_concurrent_edit_notice ... ok
test additions_removals_values_and_labels_preserve_customised_note ... ok
test dropped_extension_parameters_keep_their_order_and_do_not_conflict_with_local_values ... ok
test apple_reordering_churn_photo_and_dropped_extension_do_not_lose_local_edits ... ok
test distinct_ungrouped_types_merge_reorders_edits_additions_and_deletions ... ok
test phone_note_deletion_does_not_reappear_as_an_empty_note_on_read ... ok
test identical_visible_rows_keep_both_occurrences_during_noop_and_changed_merges ... ok
test phone_label_rename_replaces_local_value_edit ... ok
test phone_notes_with_headings_merge_successfully ... ok
test simultaneous_grouped_phone_and_photo_additions_put_photo_before_card ... ok
test local_label_renames_take_phone_deletes_or_value_edits ... ok
test related_links_with_custom_relative_targets_bind_to_the_original_person ... ok
test the_first_card_group_is_added_after_an_existing_photo ... ok
test unchanged_repeated_ungrouped_properties_keep_occurrences ... ok
test same_line_concurrent_edits_and_deletes_take_phone_group ... ok

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

     Running tests/format3.rs (target/debug/deps/format3-08cc5a6dbc94328c)

running 21 tests
test ambiguous_occurrence_replaces_only_its_group_and_returns_exact_old_lines ... ok
test ambiguous_single_fact_delete_and_edit_returns_all_previous_lines ... ok
test colliding_colon_renderings_keep_occurrences_or_return_the_phone_group ... ok
test department_hierarchy_is_one_fact_when_both_sides_edit_it ... ok
test ambiguous_client_group_takes_phone_order_while_other_groups_merge ... ok
test company_and_department_merge_as_separate_single_facts ... ok
test identical_repeatable_rows_return_history_instead_of_guessing_hidden_occurrences ... ok
test equal_single_fact_values_still_bind_by_line_order_when_edited ... ok
test concurrent_org_additions_and_deletes_never_stop_sync ... ok
test indistinguishable_single_fact_deletion_returns_phone_group_and_history ... ok
test identical_syncs_do_not_repeat_a_phone_group_replacement_notice ... ok
test local_sections_above_notes_stay_local_and_below_become_phone_notes ... ok
test exact_client_occurrences_win_before_parameterless_identical_additions ... ok
test phone_notes_keep_headings_dividers_lists_and_all_blank_lines_exactly ... ok
test repeated_single_facts_typed_from_scratch_create_separate_properties ... ok
test repeated_company_conflict_keeps_independent_department_edits ... ok
test repeated_single_facts_bind_edit_delete_and_multiple_edits_to_occurrences ... ok
test org_deletions_use_unique_departments_or_return_every_ambiguous_fact ... ok
test several_ambiguous_groups_report_each_previous_group_once ... ok
test unique_values_anchor_client_deletions_even_when_extension_parameters_are_omitted ... ok
test unambiguous_repeated_client_edits_and_deletes_keep_other_occurrences ... ok

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

     Running tests/hostile.rs (target/debug/deps/hostile-2aa574927f8d261c)

running 10 tests
test ambiguous_sources_damaged_notes_and_line_injection_are_errors ... ok
test escapes_empty_values_caret_parameters_and_unknown_sequences ... ok
test malformed_lines_and_mixed_endings_survive_a_neighbor_edit ... ok
test folds_at_arbitrary_byte_boundaries_recover_utf8 ... ok
test arbitrary_note_text_never_panics ... ok
test arbitrary_bytes_never_panic_or_drop_a_byte ... ok
test random_unicode_fields_survive_edits ... ok
test ten_thousand_properties_keep_order_and_raw_lines ... ok
test random_repeated_grouped_properties_keep_their_inventory ... ok
test ten_megabyte_photo_stays_in_original_card_and_round_trips ... ok

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


Full workspace tests at head 30f65caf: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed on the first run; no #757 rerun was needed. Output verbatim, part 1/4: ```text Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio) Compiling calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server) Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes) Compiling calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops) Compiling calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments) Compiling calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth) Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0) Compiling calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs) Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks) Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions) Compiling calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily) Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf) Compiling calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal) Finished `test` profile [unoptimized + debuginfo] target(s) in 21.11s Running unittests src/main.rs (target/debug/deps/calternal-a3b50c16e6a6ab3c) running 32 tests test admin::tests::a_stop_sent_before_subscribing_is_still_seen ... ok test admin::tests::an_active_request_gets_a_graceful_shutdown_window ... ok test admin::tests::shutdown_stops_a_client_waiting_on_a_partial_request ... ok test args::tests::defaults_and_flags ... ok test args::tests::dev_user_never_on_a_public_address ... ok test args::tests::fix_commands ... ok test args::tests::migrate_v0 ... ok test args::tests::origin_defaults_to_the_local_port ... ok test args::tests::setup_and_re_pair_are_explicit ... ok test args::tests::state_defaults_to_resolved_data_and_flags_override_environment ... ok test args::tests::user_create ... ok test args::tests::user_recover ... ok test args::tests::web_folder ... ok test admin::tests::a_restart_waits_out_an_admin_request_longer_than_ten_seconds ... ok test isolation::bob_cannot_reach_alices_attachments ... ok test isolation::in_process_server_shutdown_releases_both_roots_200x_under_load ... ignored, stress gate; run explicitly during release validation test isolation::people::backdrops_spend_the_same_counter_as_small_attachments ... ok test isolation::contacts_and_tasks_in_one_home_keep_their_own_members ... ok test isolation::people::duplicate_upload_at_quota_must_not_spend_bytes_twice ... ok test isolation::people::normal_token_failures_do_not_log_or_persist_plaintext ... ok test isolation::people::real_upload_storm_notes_trash_restore_and_delete_usage ... ok test isolation::people_actions_hide_real_ids_from_members_other_users_and_anonymous_callers ... ok test isolation::bob_cannot_join_alices_note_room ... ok test isolation::quota_refuses_large_and_small_uploads_while_notes_still_save ... ok test isolation::bob_reaches_nothing_of_alices_through_any_action ... ok test isolation::renaming_a_task_retargets_task_and_contact_links_once ... ok test isolation::split_storage_keeps_originals_and_databases_on_their_disks ... ok test plugins::tests::contract_matches_the_server ... ok test shutdown_io::tests::shutdown_finishes_an_idle_read_and_keeps_response_writes_open ... ok test shutdown_io::tests::shutdown_bounds_response_writes_to_a_peer_that_stops_reading ... ok test isolation::people::every_action_obeys_person_visibility ... ok test isolation::randomized_home_shutdown_releases_both_roots ... ok test result: ok. 31 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.82s Running tests/attachments_crash.rs (target/debug/deps/attachments_crash-cd2bbef03748dfba) running 2 tests test kill_nine_mid_upload_leaves_nothing_half_written ... ok test a_big_upload_streams_in_bounded_memory ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.30s Running tests/contacts_live.rs (target/debug/deps/contacts_live-75709d75740a5aef) running 2 tests test a_phone_renames_a_contact_while_someone_types_in_a_linking_note ... ok test a_live_h1_collision_keeps_contact_and_incoming_link_identity ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.27s Running tests/fix_tz_live.rs (target/debug/deps/fix_tz_live-0737e923ed502e77) running 2 tests test fix_without_a_running_server_says_so ... ok test strip_tz_markers_on_a_live_home_with_a_client_typing ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.64s Running tests/notes_crash.rs (target/debug/deps/notes_crash-353c659c2c8c58ef) running 3 tests test kill_nine_mid_append_on_a_long_note ... ok test kill_nine_mid_tag_rename_renames_each_tag_once ... ok test kill_nine_never_loses_or_doubles ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.38s Running tests/notes_crash_typing.rs (target/debug/deps/notes_crash_typing-a3186d5f751d22cc) running 1 test test kill_nine_while_people_type_loses_and_doubles_nothing ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.48s Running tests/notes_live.rs (target/debug/deps/notes_live-23dad727506cebb5) running 2 tests test joining_a_missing_note_fails_politely ... ok test type_over_the_websocket_and_read_it_back ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running tests/prefs_live.rs (target/debug/deps/prefs_live-2a45e14c9a3246f1) running 1 test test preferences_are_saved_checked_and_kept ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running tests/search_live.rs (target/debug/deps/search_live-f7802571dcef0e22) running 2 tests test perf_live_empty_search_under_one_second ... ignored, live empty-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test notes_from_everywhere_are_found ... ok test result: ok. 1 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.81s Running tests/startup.rs (target/debug/deps/startup-d7666ef4a67395d8) running 6 tests test perf_startup_under_500ms ... ignored, startup latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test refuses_dev_user_on_a_public_address ... ok test refuses_plain_http_on_a_public_origin ... ok test recover_only_knows_real_people ... ok test a_new_server_prints_a_setup_token ... ok test answers_after_launch ... ok test result: ok. 5 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/startup_quota.rs (target/debug/deps/startup_quota-ff7d3c3723709dd3) running 1 test test first_upload_after_healthz_enforces_existing_home_usage ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/storage_startup.rs (target/debug/deps/storage_startup-b157873ab6d847a5) running 11 tests test create_refuses_unpaired_notes_or_databases_before_creating_other_root ... ok test a_lock_held_past_the_longest_grace_still_fails_startup ... ok test missing_home_refuses_without_creating_directory_or_lock ... ok test legacy_history_read_only_and_invalid_state_are_refused ... ok test original_storage_startup_scenario_repeats_100x_under_load ... ignored, stress gate; run explicitly during release validation test both_missing_markers_with_existing_split_data_require_confirmed_re_pair ... ok test missing_state_never_recreates_databases_even_with_create ... ok test single_root_upgrade_backup_split_cache_delete_and_rollback ... ok test startup_waits_for_a_previous_server_to_release_both_roots ... ok test roots_must_keep_their_persistent_partner_and_admin_must_confirm ... ok test both_roots_remain_exclusively_locked ... ok test result: ok. 10 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 10.04s Running unittests src/lib.rs (target/debug/deps/calternal_attachments-d58f6af211aebaca) running 22 tests test serve::tests::dispositions_quote_safely ... ok test serve::tests::ranges ... ok test serve::tests::only_plain_visible_paths_are_served ... ok test tests::http::a_connection_that_breaks_off_leaves_nothing ... ok test tests::http::check_finds_only_your_own_files ... ok test tests::http::an_upload_lands_in_its_dated_folder_and_is_served_back ... ok test tests::http::a_retry_with_the_same_key_never_makes_a_second_copy ... ok test tests::http::review_754b_utf8_case_and_normalization_collision_behavior_is_preserved ... ok test tests::http::paths_that_climb_out_of_the_home_are_not_found ... ok test tests::http::names_can_not_steer_where_a_file_goes ... ok test tests::http::review_754b_upload_preserves_raw_names_and_real_replacement_character_collisions ... ok test tests::http::the_sweep_removes_what_a_crash_left_and_spares_live_uploads ... ok test tests::http::uploads_need_a_session_our_page_and_a_key ... ok test tests::sniffing::days_are_strict ... ok test tests::sniffing::invalid_utf8_names_do_not_claim_replacement_character_names ... ok test tests::sniffing::names_are_kept_but_made_safe ... ok test tests::sniffing::pictures_and_videos_go_to_photos ... ok test tests::sniffing::text_types_come_from_the_extension_and_html_never_runs ... ok test tests::sniffing::the_name_never_decides_a_binary_type ... ok test tests::http::the_limit_holds_while_streaming_without_a_length ... ok test tests::http::the_same_file_again_says_already_uploaded_and_keeps_one_copy ... ok test tests::http::unsafe_types_are_downloads_with_a_strict_policy ... ok test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s Running unittests src/lib.rs (target/debug/deps/calternal_auth-c6ffb9bdc96505f7) running 30 tests test config::tests::origins ... ok test db::tests::a_version_1_database_gets_passkey_names ... ok test db::tests::existing_database_keeps_people_credentials_and_sessions ... ok test http::cookie_tests::session_cookie_is_host_only_and_secure ... ok test db::tests::opens_twice_and_keeps_schema ... ok test http::proxy_tests::forwarding_stops_at_first_untrusted_hop_and_rejects_malformed_chains ... ok test invite_key::tests::lookup_uses_a_separate_derived_key_and_depends_on_the_server_key ... ok test invite_redeem::tests::expiry_and_clock_rollback_use_the_same_validation_path ... ok test invite_redeem::tests::invalid_invite_classes_perform_one_lookup_and_one_secret_comparison ... ok test invite_redeem::tests::invalid_invites_do_not_reveal_name_conflicts ... ok test limit::reliability_tests::backoff_expires_is_capped_and_refusals_do_not_extend_it ... ok test limit::reliability_tests::buckets_are_independent_and_bounded ... ok test invite_key::tests::key_round_trips_but_modified_ciphertext_and_another_id_fail ... ok test limit::reliability_tests::full_map_evicts_least_recent_without_refusing_new_sources ... ok test limit::reliability_tests::target_capacity_preserves_live_budgets_and_evicts_only_oldest_expired ... ok test passkeys::tests::ids_round_trip ... ok test passkeys::tests::names_are_trimmed_short_and_never_empty ... ok test ceremony::tests::anonymous_pool_stays_bounded_and_evicts_oldest ... ok test ceremony::tests::full_pool_refuses_foreign_source_without_discarding_live_prompt ... ok test session::tests::names_are_cleaned ... ok test setup::tests::names ... ok test setup::tests::names_reject_invisible_and_normalize_nfc ... ok test quota::independent_review_755::second_upload_during_registration_must_count_outside_growth ... ok test setup::tests::recover_needs_a_known_person ... ok test setup::tests::usernames ... ok test token::tests::junk_is_not_a_token ... ok test token::tests::setup_tokens_round_trip_through_pasting ... ok test setup::tests::recovery_requires_exact_username_or_uuid_never_display_name ... ok test setup::tests::cli_creation_refuses_admin_name_confusables ... ok test limit::reliability_tests::source_churn_cannot_reset_target_budget ... ok test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.41s Running tests/abuse.rs (target/debug/deps/abuse-55dc96433ab57c65) running 12 tests test bad_json_and_unknown_fields_are_refused ... ok test forged_sessions_get_nowhere ... ok test junk_setup_tokens_are_refused_then_rate_limited ... ok test anonymous_prompt_flood_preserves_login_setup_and_add ... ok test duplicate_session_cookies_never_choose_an_identity ... ok test login_source_limit_does_not_block_another_client ... ok test non_json_requests_are_refused ... ok test nothing_about_the_server_leaks_before_sign_in ... ok test one_source_cannot_lock_out_another_and_cannot_spoof_forwarding ... ok test other_sites_cannot_act_for_you ... ok test oversized_bodies_are_refused ... ok test garbage_credentials_never_crash ... ok test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s Running tests/create.rs (target/debug/deps/create-073bf952f17a5ede) running 6 tests test an_earlier_first_owner_token_stops_working ... ok test an_expired_enrolment_token_is_refused ... ok test a_created_person_enrolls_their_first_passkey_and_is_the_same_person ... ok test nothing_about_the_person_leaks_before_sign_in ... ok test names_must_be_usable_and_unique ... ok test an_enrolment_token_works_exactly_once_under_a_storm ... ok test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s Running tests/groups.rs (target/debug/deps/groups-90b4782e7dd6e580) running 1 test test shared_groups_control_visibility_and_managers_only_edit_local_members ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Running tests/host_cookies.rs (target/debug/deps/host_cookies-6b0c997d56c59693) running 3 tests test old_name_is_ignored_and_cleared_once_without_touching_host_session ... ok test duplicate_host_headers_and_stale_requests_never_clear_new_session ... ok test upgrading_schema_six_removes_cookie_state_and_keeps_passkeys ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/invites.rs (target/debug/deps/invites-e9c6f1bddf277840) running 8 tests test invite_finish_rechecks_admin_names_after_role_changes ... ok test invite_admin_names_cannot_be_impersonated_and_failure_preserves_invite ... ok test invite_redemption_joins_its_groups_and_other_inviters_cannot_copy_it ... ok test invite_can_be_copied_after_restart_and_only_one_racing_passkey_wins ... ok test losing_the_key_does_not_replace_it_and_invite_secrets_never_enter_action_history ... ok test wrong_expired_used_and_revoked_invites_give_one_answer ... ok test legacy_invite_indexes_upgrade_atomically_and_keep_copy_and_redemption ... ok test invite_redemption_reaches_a_visible_admin_but_not_an_unrelated_member ... ok test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s Running tests/isolation.rs (target/debug/deps/isolation-8f6869b624859b1e) running 3 tests test a_cookie_sent_from_another_sites_page_does_not_count ... ok test another_persons_passkey_prompt_cannot_be_used_or_cancelled ... ok test devices_and_passkeys_of_another_person_are_not_found ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Running tests/login.rs (target/debug/deps/login-869d6dadbd3d3382) running 11 tests test a_sign_in_answer_cannot_be_replayed ... ok test bearer_tokens_work_like_cookies ... ok test foreign_status_cannot_sign_the_browser_out ... ok test an_unknown_passkey_is_refused ... ok test revoking_another_device_signs_it_out ... ok test sign_in_with_a_passkey_creates_a_new_installation ... ok test logout_revokes_the_installation_and_rejects_live_cookies ... ok test signing_in_shows_up_live_on_another_device ... ok test sign_out_ends_the_session_immediately ... ok test signing_out_shows_up_live_on_another_device ... ok test sessions_expire_when_unused ... ok test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s Running tests/migration.rs (target/debug/deps/migration-1accde5b0ec134b7) running 1 test test schema_two_copy_keeps_real_credentials_sessions_and_recovery ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s Running tests/passkeys.rs (target/debug/deps/passkeys-15e16beb8d0367d6) running 7 tests test an_empty_name_is_refused_and_a_long_one_is_cut ... ok test add_rename_and_remove_each_leave_a_journal_event ... ok test a_removed_passkey_that_is_gone_or_unknown_is_not_found ... ok test the_first_passkey_is_listed_with_the_device_it_was_made_on ... ok test adding_needs_a_sign_in_and_an_add_prompt_works_once ... ok test the_last_passkey_cannot_be_removed ... ok test the_same_device_cannot_be_added_twice ... ok test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s Running tests/people.rs (target/debug/deps/people-4e83322d17dda982) running 4 tests test first_owner_has_capabilities_and_cannot_demote_the_last_admin ... ok test member_cannot_change_roles_and_new_capability_sets_work ... ok test promotion_cannot_create_confusable_admin_names ... ok test two_admins_racing_to_demote_themselves_leave_one_admin ... ok test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running tests/quota_counter.rs (target/debug/deps/quota_counter-f48b0804a4693eb3) running 4 tests test perf_signin_during_large_recount_under_fifty_ms ... ignored, sign-in latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test small_uploads_spend_the_same_allowance_as_large_uploads ... ok test health_reports_retained_storage_measurement_failures ... ok test signin_finishes_before_a_large_recount ... ok test result: ok. 3 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 4.25s Running tests/reliability_review.rs (target/debug/deps/reliability_review-fe810f4afa6e8922) running 22 tests test authentication_database_does_not_wait_for_general_blocking_workers ... ok test anonymous_flood_must_not_evict_other_persons_prompt ... ok test crash_child_exit ... ignored test concurrent_quota_admissions_do_not_overspend ... ok test default_twenty_mib_stream_boundary ... ok test directory_moves_keep_child_accounting_and_deletes_correct ... ok test counter_concurrent_mutations_drift_and_restart ... ok test independent_login_latency_during_recount ... ignored, latency budget runs on the perf VM via perf/auth-latency-vm.sh test ipv6_prefix_must_share_budget ... ok test directory_move_during_initial_recount_must_track_later_deletes ... ok test names_normalization_recovery_and_invisibles ... ok test ipv6_rotation_must_not_lock_out_new_source ... ok test normalized_setup_token_must_share_target_budget ... ok test perf_ipv6_source_rotation_under_fifty_five_seconds ... ignored, IPv6 source-churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test restart_recovers_disk_update_missing_counter_notification ... ok test repeated_bad_signatures_for_one_account_must_share_budget ... ok test source_isolation_and_untrusted_forwarding ... ok test slow_uploads_must_not_starve_authentication_blocking_pool ... ok test trusted_proxy_uses_nearest_untrusted_hop ... ok test streamed_slow_exact_over_abort_and_quota_replacement ... ok test account_owner_can_sign_in_after_backoff_and_success_resets_failures ... ok test independent_login_completes_before_recount ... ok test result: ok. 19 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 1.48s Running tests/reliability_round3.rs (target/debug/deps/reliability_round3-9c5194112c2287db) running 12 tests test attachment_and_backdrop_routes_share_caps_and_cancel_cleanup ... ok test canonical_recovery_token_variants_share_one_target_without_spending_other_tokens ... ok test fifty_slow_upload_attempts_preserve_full_signin_and_status ... ok test ipv4_mapped_v6_and_native_v4_share_budget_but_adjacent_prefix_does_not ... ok test over_ten_thousand_distinct_source_buckets_still_admit_new_clients ... ok test perf_signin_and_status_during_slow_uploads_under_fifty_ms ... ignored, sign-in and status latency budgets run on the perf VM via perf/ordinary-latency-vm.sh test perf_source_bucket_churn_under_fifty_five_seconds ... ignored, source-bucket churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test rename_collision_and_replacement_keep_correct_usage ... ok test setup_target_budget_survives_more_than_ten_thousand_sources ... ok test idle_deadline_cleans_files_and_reopens_each_person_capacity ... ok test attachment_slow_bodies_must_not_hold_all_general_blocking_workers ... ok test maximum_account_backoff_releases_owner_despite_refused_retries has been running for over 60 seconds test maximum_account_backoff_releases_owner_despite_refused_retries ... ok test result: ok. 10 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 123.85s Running tests/security_regressions.rs (target/debug/deps/security_regressions-eafb2d2ddad42fa3) running 15 tests test eight_parallel_redeemers_create_exactly_one_account ... ok test concurrent_key_creation_publishes_one_complete_key ... ok test every_action_rejects_anonymous_expired_and_unprivileged_writes ... ok test groups_manager_must_obey_single_person_visibility_rule ... ok test expiry_during_passkey_registration_consumes_nothing ... ok test invite_lookup_must_use_keyed_hash ... ok test new_modules_are_small_and_documented ... ok test malformed_token_must_have_same_generic_response ... ok test perf_invite_failure_timing_classes_within_ratio ... ignored, invite failure timing budget runs on the perf VM via perf/ordinary-latency-vm.sh test key_permissions_missing_corrupt_and_no_plaintext_history ... ok test revoked_expired_used_and_wrong_fail_equally ... ok test origin_dev_schema_migrates_idempotently_and_rolls_back_partial_failure ... ok test two_admins_demoting_each_other_keep_one_manager ... ok test quota_serializes_large_placements_and_tracks_delete_trash ... ok test all_five_invite_failures_have_the_same_body_and_status ... ok test result: ok. 14 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.18s Running tests/setup.rs (target/debug/deps/setup-012b11e547011a67) running 8 tests test a_restart_replaces_the_first_owner_token ... ok test a_finished_prompt_cannot_be_replayed ... ok test first_owner_needs_a_name ... ok test a_token_works_exactly_once_under_a_storm ... ok test first_owner_signs_up_with_the_printed_token ... ok test session_cookie_is_locked_down ... ok test an_expired_setup_token_is_refused ... ok test recovery_adds_a_new_passkey_for_the_same_person ... ok test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s Running unittests src/lib.rs (target/debug/deps/calternal_backdrops-9bb1b7445f355593) running 25 tests test tests::a_photo_unknown_to_us_is_looked_up ... ok test tests::a_stricter_attachment_limit_also_bounds_backdrops ... ok test tests::an_answer_that_is_not_a_picture_is_refused_and_not_kept ... ok test tests::an_upload_is_private_to_the_person_who_made_it ... ok test tests::an_upload_is_kept_once_and_served_back ... ok test tests::changes_need_our_own_page_and_a_signed_in_person ... ok test tests::bad_ids_never_reach_the_disk_or_the_network ... ok test tests::picking_is_reported_to_unsplash_once ... ok test tests::pictures_are_proxied_cached_and_never_given_the_key ... ok test tests::pictures_from_other_hosts_are_refused ... ok test tests::search_lists_photos_with_our_own_addresses_and_credit ... ok test tests::nobody_can_read_or_list_someone_elses_uploads ... ok test tests::storage_cache::split_cache_deletion_refetches_upstream_and_keeps_original_upload ... ok test tests::the_real_client_sends_the_key_and_caps_the_size ... ok test tests::the_real_client_speaks_https_to_unsplash ... ignored, needs the internet test tests::the_same_search_is_answered_once ... ok test tests::too_many_pixels_are_refused_but_files_within_the_byte_limit_work ... ok test tests::unsplash_running_out_of_requests_is_a_plain_slow_down ... ok test tests::uploads_are_checked_by_content_not_by_what_they_claim ... ok test tests::without_a_key_photos_are_off_but_uploads_work ... ok test uploads::reliability_tests::idle_upload_removes_temporary_file_and_releases_admission ... ok test tests::the_cache_drops_the_oldest_files_past_its_cap ... ok test tests::backdrop_quota_refuses_new_files_and_releases_space_on_delete ... ok test tests::streaming_upload_stops_at_byte_limit_and_leaves_no_artifact ... ok test uploads::reliability_tests::upload_admission_is_bounded_and_cancellation_restores_capacity ... ok test result: ok. 24 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.06s Running unittests src/lib.rs (target/debug/deps/calternal_contacts-ee6c1c39ad0c7c23) running 1 test test note::related_links_tests::only_the_cards_related_group_names_related_people ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/apple.rs (target/debug/deps/apple-2e4be127f63ba73a) running 4 tests test apple_rewrite_keeps_canonical_extensions_and_takes_real_edits ... ok test unchanged_duplicate_ungrouped_occurrences_merge ... ok test client_deletion_requires_sent_field_and_uid_is_immutable ... ok test unsent_note_changes_survive_and_concurrent_edits_return_history ... ok test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/break_codec.rs (target/debug/deps/break_codec-aafcfb31f8b66aed) running 11 tests test envelope_checks_and_original_copy_reject_ambiguous_or_edited_state ... ok test bare_properties_and_ignored_parameter_properties_decode_the_same_values ... ok test folded_and_unfolded_utf8_lines_keep_values_and_their_original_bytes ... ok test escaped_separator_parity_keeps_component_and_list_boundaries ... ok test canonical_note_comparison_checks_every_byte_and_falls_back_for_local_sections ... ok test multiline_google_custom_labels_cannot_create_other_card_groups ... ok test quoted_parameter_delimiters_and_value_colons_keep_their_meaning ... ok test typed_reordering_and_value_tag_changes_use_the_exported_wire_projection ... ok test component_and_list_comparisons_preserve_empty_parts_and_noncanonical_escapes ... ok test original_and_edited_note_snapshots_both_preserve_later_typed_edits ... ok test mixed_rendered_values_keep_all_other_bytes_during_a_client_edit ... ok test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/break_generated.rs (target/debug/deps/break_generated-820fb6d4d3d4733d) running 9 tests test fixed_seed_generated_shapes_include_every_reaudit_case ... ok test arbitrary_wire_and_note_inputs_preserve_bytes_or_explain_rejection ... ok test independent_vendor_shaped_cards_keep_foldings_metadata_and_unknowns ... ok test generated_notes_shapes_and_repeated_fact_edits_round_trip ... ok test synthetic_vendor_corpus_is_bidirectionally_byte_identical ... ok test five_megabyte_notes_survive_both_conversions ... ok test generated_valid_cards_and_messy_notes_keep_every_field ... ok test megabyte_value_ten_thousand_visible_fields_and_ten_megabyte_photo ... ok test ten_thousand_new_custom_labels_get_unique_groups_and_round_trip ... ok test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.21s Running tests/break_inventory.rs (target/debug/deps/break_inventory-3574ff8515f5622c) running 1 test test every_inventory_property_survives_a_neighbour_edit ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/break_labels.rs (target/debug/deps/break_labels-2a15e9f3957048ff) running 2 tests test names_use_human_order_even_when_vendor_properties_are_reordered ... ok test builtin_labels_show_the_words_on_the_phone_and_recover_original_codes ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/break_layout.rs (target/debug/deps/break_layout-c5075a452332b1c4) running 27 tests test ambiguous_simultaneous_colon_edit_returns_phone_group_and_history ... ok test a_phone_note_containing_h2_or_h1_round_trips ... ok test colon_label_renames_survive_a_following_client_edit ... ok test colon_bearing_label_edits_change_only_the_label_and_value_edits_only_the_value ... ok test duplicate_structured_name_parts_are_unrepresentable ... ok test company_and_department_edits_share_one_org_in_either_note_order ... ok test crlf_notes_preserve_original_escape_spelling_and_do_not_create_merge_conflicts ... ok test entering_a_birthday_year_clears_the_apple_omit_year_flag ... ok test first_list_ends_at_a_paragraph_and_second_list_stays_local ... ok test later_notes_headings_are_phone_text ... ok test colons_delimiters_and_unicode_keep_their_exact_wire_values ... ok test empty_visible_properties_are_not_deleted_on_an_unchanged_round_trip ... ok test flat_repeatable_lines_stay_and_are_reported ... ok test multiline_labels_never_turn_into_unreported_fields ... ok test missing_h1_explains_rejection_and_empty_card_is_allowed ... ok test missing_wire_display_name_is_not_silently_created_by_a_round_trip ... ok test multiple_unrepresentable_document_fields_explain_rejection ... ok test note_headings_and_crlf_do_not_change_plain_text ... ok test notes_heading_after_a_local_h1_owns_the_tail ... ok test multiple_edits_to_indistinguishable_occurrences_do_not_guess_hidden_parameters ... ok test org_hierarchy_is_one_fact_and_unchanged_components_stay_lossless ... ok test tags_keep_list_boundaries_when_a_category_contains_comma_space ... ok test unchanged_values_that_differ_only_by_trailing_spaces_keep_both_occurrences ... ok test utf8_bom_is_document_framing ... ok test unicode_names_keep_normalisation_scripts_direction_and_joiners ... ok test one_property_edit_changes_only_its_original_logical_line ... ok test markdown_whitespace_and_bullets_do_not_edit_the_phone ... ok test result: ok. 27 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/break_links.rs (target/debug/deps/break_links-1cfb864ce45a27c1) running 4 tests test a_colon_in_a_related_name_is_text_and_an_explicit_uri_stays_a_uri ... ok test escaped_closing_brackets_inside_a_name_are_not_link_delimiters ... ok test related_brackets_and_angle_brackets_are_valid_markdown_and_editable ... ok test a_plain_name_that_looks_like_a_link_stays_that_name ... ok test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/break_merge.rs (target/debug/deps/break_merge-525543662f577ab1) running 16 tests test crlf_new_group_is_written_once_for_multiple_incoming_values ... ok test distinct_repeated_types_return_quiet_concurrent_edit_notice ... ok test additions_removals_values_and_labels_preserve_customised_note ... ok test dropped_extension_parameters_keep_their_order_and_do_not_conflict_with_local_values ... ok test apple_reordering_churn_photo_and_dropped_extension_do_not_lose_local_edits ... ok test distinct_ungrouped_types_merge_reorders_edits_additions_and_deletions ... ok test phone_note_deletion_does_not_reappear_as_an_empty_note_on_read ... ok test identical_visible_rows_keep_both_occurrences_during_noop_and_changed_merges ... ok test phone_label_rename_replaces_local_value_edit ... ok test phone_notes_with_headings_merge_successfully ... ok test simultaneous_grouped_phone_and_photo_additions_put_photo_before_card ... ok test local_label_renames_take_phone_deletes_or_value_edits ... ok test related_links_with_custom_relative_targets_bind_to_the_original_person ... ok test the_first_card_group_is_added_after_an_existing_photo ... ok test unchanged_repeated_ungrouped_properties_keep_occurrences ... ok test same_line_concurrent_edits_and_deletes_take_phone_group ... ok test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/format3.rs (target/debug/deps/format3-08cc5a6dbc94328c) running 21 tests test ambiguous_occurrence_replaces_only_its_group_and_returns_exact_old_lines ... ok test ambiguous_single_fact_delete_and_edit_returns_all_previous_lines ... ok test colliding_colon_renderings_keep_occurrences_or_return_the_phone_group ... ok test department_hierarchy_is_one_fact_when_both_sides_edit_it ... ok test ambiguous_client_group_takes_phone_order_while_other_groups_merge ... ok test company_and_department_merge_as_separate_single_facts ... ok test identical_repeatable_rows_return_history_instead_of_guessing_hidden_occurrences ... ok test equal_single_fact_values_still_bind_by_line_order_when_edited ... ok test concurrent_org_additions_and_deletes_never_stop_sync ... ok test indistinguishable_single_fact_deletion_returns_phone_group_and_history ... ok test identical_syncs_do_not_repeat_a_phone_group_replacement_notice ... ok test local_sections_above_notes_stay_local_and_below_become_phone_notes ... ok test exact_client_occurrences_win_before_parameterless_identical_additions ... ok test phone_notes_keep_headings_dividers_lists_and_all_blank_lines_exactly ... ok test repeated_single_facts_typed_from_scratch_create_separate_properties ... ok test repeated_company_conflict_keeps_independent_department_edits ... ok test repeated_single_facts_bind_edit_delete_and_multiple_edits_to_occurrences ... ok test org_deletions_use_unique_departments_or_return_every_ambiguous_fact ... ok test several_ambiguous_groups_report_each_previous_group_once ... ok test unique_values_anchor_client_deletions_even_when_extension_parameters_are_omitted ... ok test unambiguous_repeated_client_edits_and_deletes_keep_other_occurrences ... ok test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/hostile.rs (target/debug/deps/hostile-2aa574927f8d261c) running 10 tests test ambiguous_sources_damaged_notes_and_line_injection_are_errors ... ok test escapes_empty_values_caret_parameters_and_unknown_sequences ... ok test malformed_lines_and_mixed_endings_survive_a_neighbor_edit ... ok test folds_at_arbitrary_byte_boundaries_recover_utf8 ... ok test arbitrary_note_text_never_panics ... ok test arbitrary_bytes_never_panic_or_drop_a_byte ... ok test random_unicode_fields_survive_edits ... ok test ten_thousand_properties_keep_order_and_raw_lines ... ok test random_repeated_grouped_properties_keep_their_inventory ... ok test ten_megabyte_photo_stays_in_original_card_and_round_trips ... ok test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.73s ```
Author
Owner

Full workspace tests at head 30f65caf: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed on the first run; no #757 rerun was needed. Output verbatim, part 2/4:

     Running tests/layout.rs (target/debug/deps/layout-4430054a6229ec02)

running 13 tests
test apple_example_note_matches_the_published_layout ... ok
test google_custom_labels_and_non_gregorian_birthdays_keep_their_wire_details ... ok
test adr_has_three_readable_examples ... ok
test markdown_related_links_with_spaces_and_unicode_are_reversible ... ok
test not_a_field_and_other_sections_stay_exact ... ok
test independent_phone_and_note_edits_preserve_local_spelling ... ok
test notes_are_plain_text_two_way_through_nested_headings ... ok
test photo_reference_is_an_attachment_io_boundary ... ok
test renaming_an_apple_label_changes_only_its_label_property ... ok
test phone_edit_appends_to_group_and_keeps_spacing_and_local_lines ... ok
test each_visible_edit_preserves_other_raw_lines ... ok
test typed_edits_after_reading_a_note_patch_the_readable_card ... ok
test readable_layout_and_all_agreed_fields ... ok

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

     Running tests/roundtrip.rs (target/debug/deps/roundtrip-1a666d90e350de63)

running 10 tests
test editing_geo_keeps_coordinate_precision_and_semicolon_structure ... ok
test add_delete_and_repeated_fields_keep_the_right_occurrence ... ok
test new_and_edited_canonical_notes_are_identical_after_wire_import ... ok
test new_contact_uid_is_note_id_and_default_is_three ... ok
test hand_edit_uses_external_original_until_export ... ok
test structured_names_addresses_labels_and_partial_dates_are_typed ... ok
test reordering_fields_and_changing_value_tags_cannot_make_an_unstable_note ... ok
test version_mapping_keeps_phone_text_preferences_and_photo_bytes ... ok
test corpus_is_identical_in_both_directions ... ok
test editing_each_field_changes_only_its_raw_occurrence ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_contacts_actions-36b7f1d2027050e3)

running 130 tests
test cards::tests::ids_cannot_leave_the_folder ... ok
test facts::tests::a_card_without_a_name ... ok
test frontmatter::tests::no_frontmatter_is_left_alone ... ok
test facts::tests::reads_name_and_facts_in_order ... ok
test frontmatter::tests::a_body_divider_is_not_frontmatter ... ok
test cards::tests::copies_are_written_whole_and_removed ... ok
test frontmatter::tests::splits_and_joins_back_exactly ... ok
test jobs::tests::attempts_are_stable_and_distinct ... ok
test import::tests::identity_is_the_uid_or_the_bytes ... ok
test names::tests::bidi_controls_never_reach_a_file_name_but_joiners_do ... ok
test names::tests::a_fact_equal_to_the_name_is_skipped ... ok
test names::tests::empty_and_emoji_names ... ok
test names::tests::clashes_add_the_first_fact_then_a_number ... ok
test names::tests::illegal_characters_become_dashes ... ok
test names::tests::nfd_and_nfc_give_one_name ... ok
test namer::tests::names_come_from_the_note_and_its_card ... ok
test names::tests::case_and_unicode_form_clash ... ok
test names::tests::long_names_are_cut_between_whole_characters ... ok
test tests::basics::bad_cards_are_refused_and_nothing_is_written ... ok
test tests::basics::a_retry_with_the_same_key_makes_one_contact ... ok
test tests::basics::contact_actions_never_touch_other_notes ... ok
test tests::basics::a_new_name_renames_and_links_follow ... ok
test tests::basics::update_merges_and_keeps_typing ... ok
test tests::basics::create_writes_the_note_and_its_card ... ok
test tests::basics::delete_goes_to_the_trash_and_restore_brings_it_back ... ok
test tests::break_links::case_only_renames ... ok
test tests::break_links::a_rename_onto_an_existing_file ... ok
test tests::break_links::code_stays_and_anchors_travel ... ok
test tests::break_links::deleted_forever_links_say_so ... ok
test tests::break_links::nfc_and_nfd_names ... ok
test tests::break_links::relative_links_from_subfolders ... ok
test tests::break_links::rename_chains ... ok
test tests::break_links::rename_while_another_client_edits_a_linking_note ... ok
test tests::break_links::the_checker_finds_dangling_links ... ok
test tests::break_links::the_title_never_renames_a_contact_file ... ok
test tests::break_names::a_name_an_existing_note_has ... ok
test tests::break_names::empty_and_emoji_names ... ok
test tests::break_names::names_differing_only_in_case_are_one_name ... ok
test tests::break_names::the_folder_is_a_setting ... ok
test tests::break_names::unsafe_characters_never_reach_the_file_name ... ok
test tests::break_links::swapping_two_names ... ok
test tests::correctness::acknowledged_edit_between_undo_preparation_and_deletion_survives ... ok
test tests::break_names::very_long_names_fit_the_byte_limit ... ok
test tests::correctness::crash_after_unlink_finishes_history_and_quota_on_restart ... ok
test tests::correctness::deletion_crash_child ... ok
test tests::correctness::deletion_recovery_preserves_an_outside_edit_made_while_down ... ok
test tests::break_names::clashes_add_company_then_city_then_nickname_then_domain_then_a_number ... ok
test tests::correctness::failed_partial_import_releases_every_prepared_card_exactly ... ok
test tests::env::pause_markers_accept_serial_and_parallel_child_harness_output ... ok
test tests::env::fixture_releases_its_engine_and_stores ... ok
test tests::correctness::bounded_shutdown_joins_the_card_write_and_refuses_later_copies ... ok
test tests::import::an_import_makes_every_new_contact_in_one_job ... ok
test tests::import::a_final_flush_failure_in_an_existing_folder_preserves_earlier_contacts ... ok
test tests::import::limits_hold ... ok
test tests::import::a_final_flush_failure_undoes_every_published_contact_and_can_retry ... ok
test tests::import::the_same_file_twice_changes_nothing ... ok
test tests::kill9::child ... ok
test tests::import::bulk_import_preserves_an_id_held_only_by_trash_details ... ok
test tests::import::parallel_import_keeps_input_order_and_compares_existing_peer_facts ... ok
test tests::kill9::create_killed_prepared ... ok
test tests::break_links::five_thousand_links_across_a_thousand_notes ... ok
test tests::kill9::create_killed_committed ... ok
test tests::kill9::create_killed_copying ... ok
test tests::kill9::edit_killed_committed ... ok
test tests::kill9::import_killed_committed ... ok
test tests::kill9::import_killed_copying ... ok
test tests::kill9::edit_killed_copying ... ok
test tests::kill9::import_killed_mid_import ... ok
test tests::kill9::rename_killed_committed ... ok
test tests::kill9::import_killed_planned ... ok
test tests::kill9::rename_killed_mid_rename ... ok
test tests::kill9::rename_killed_planned ... ok
test tests::kill9::import_killed_prepared ... ok
test tests::naming::an_h1_typed_in_the_app_renames_by_the_contacts_rule ... ok
test tests::kill9::rename_killed_copying ... ok
test tests::naming::restoring_into_a_taken_name_uses_the_contacts_rule ... ok
test tests::related::a_related_namesake_in_the_same_import_wins_over_the_book ... ok
test tests::related::an_unchanged_phone_resend_changes_nothing ... ok
test tests::related::create_and_update_link_one_person_and_leave_namesakes_plain ... ok
test tests::kill9::edit_killed_prepared ... ok
test tests::related::related_names_from_one_import_link_to_the_files_made ... ok
test tests::review3::a_card_saved_with_a_byte_order_mark_is_read ... ok
test tests::review3::a_uidless_card_edited_on_the_phone_then_imported_again_is_not_a_duplicate ... ok
test tests::review3::bidi_controls_never_reach_a_file_name ... ok
test tests::review3::contact_writes_are_refused_after_shutdown ... ok
test tests::review3::imports_and_photo_cards_count_against_the_storage_limit ... ok
test tests::kill9::rename_killed_prepared ... ok
test tests::review3::undo_of_a_contact_change_is_held_to_the_limit ... ok
test tests::review3::same_size_photo_swaps_are_held_to_the_limit ... ok
test tests::review::both_ends_in_trash_restore_source_before_target_keeps_identity ... ok
test tests::review::concurrent_undo_and_staged_update_keep_note_and_card_together ... ok
test tests::review::crash_child ... ok
test tests::review::device_name_before_extension_is_safe ... ok
test tests::review::import_shared_company_uses_distinguishing_city_and_identical_facts_use_numbers ... ok
test tests::props::random_sequences_keep_every_invariant ... ok
test tests::review::kill9_delete_before_progress ... ok
test tests::review::kill9_delete_only_runtime_inverse ... ok
test tests::related::every_related_link_reaches_the_person_it_names ... ok
test tests::review3::undoing_an_import_releases_everything_it_kept ... ok
test tests::review::kill9_import_after_history_transaction ... ok
test tests::review::kill9_import_during_file_placement ... ok
test tests::review::kill9_import_after_directory_sync ... ok
test tests::review::kill9_import_after_first_file ... ok
test tests::review::kill9_restore_after_incoming_link_repair ... ok
test tests::review::kill9_restore_after_outgoing_link_repair ... ok
test tests::review::kill9_import_into_existing_folder_after_first_file ... ok
test tests::review::kill9_restore_before_outgoing_link_repair ... ok
test tests::review::kill9_restore_before_progress ... ok
test tests::review::kill9_runtime_inverse ... ok
test tests::review::link_in_trash_follows_rename ... ok
test tests::review::kill9_import_private_files_before_history ... ok
test tests::review::rename_to_unbalanced_bracket_keeps_a_markdown_link ... ok
test tests::review::replayed_delete_only_runtime_inverse_restores_only_job_edit ... ok
test tests::review::replayed_runtime_inverse_restores_only_job_edit ... ok
test tests::review::restore_does_not_resurrect_a_removed_link_or_retarget_its_identical_replacement ... ok
test tests::review::restore_into_taken_name_preserves_link_identity ... ok
test tests::review::kill9_restore_before_incoming_link_repair ... ok
test tests::review::same_company_uses_city ... ok
test tests::review::undo_refuses_a_later_phone_card_before_moving_or_retargeting_anything ... ok
test tests::sweep::the_sweep_drops_cards_of_contacts_gone_for_good ... ok
test tests::sweep::undo_and_deleting_forever_sweep_at_once ... ok
test tests::review::kill9_import_into_existing_folder_after_directory_sync ... ok
test tests::undo::a_retry_after_a_failed_rename_retries_cleanly_and_never_doubles ... ok
test tests::undo::undo_of_a_rename_takes_the_card_back_with_the_note ... ok
test tests::review::ordinary_tag_job_and_undo_preserve_concurrent_typing ... ok
test write::tests::keyed_ids_are_stable ... ok
test write::tests::old_titles_cover_name_file_and_clash_forms ... ok
test tests::undo::undo_of_an_import_takes_every_contact_back ... ok
test tests::undo::a_batch_that_fails_part_way_is_undone_completely ... ok
test tests::review::ring_import_1000_swaps_chains_unicode_h1_and_undo ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_core-22753e58953721f1)

running 13 tests
test action::tests::namespace_is_enforced ... ok
test batch::tests::stops_at_the_first_error ... ok
test drain::tests::close_gives_up_after_its_bound ... ok
test batch::tests::visits_everything_once_in_order ... ok
test error::tests::every_code_has_a_friendly_message ... ok
test journal::tests::junk_tokens_ask_for_a_refresh ... ok
test drain::tests::close_waits_for_work_already_in_and_refuses_new_work ... ok
test plugin::tests::plugins_stay_in_their_namespace ... ok
test journal::tests::tokens_round_trip ... ok
test room_queue::tests::control_messages_can_release_rooms_when_payload_budgets_are_full ... ok
test room_queue::tests::budgets_count_bytes_and_release_on_receive_and_drop ... ok
test room_queue::tests::deferred_payload_keeps_local_and_global_byte_admission ... ok
test room_queue::tests::failed_admission_does_not_leak_reservations ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_daily-b83339fbd8898931)

running 22 tests
test day::tests::daylight_saving_uses_the_offset_the_device_sends ... ok
test day::tests::midnight_follows_the_device_in_ist ... ok
test day::tests::titles_read_like_the_web_app ... ok
test day::tests::names_and_ids ... ok
test tests::bad_input_is_refused_kindly ... ok
test tests::an_existing_day_file_is_reused_whatever_its_id ... ok
test tests::any_text_is_safe_to_read_and_plan ... ok
test tests::close_turns_one_open_entry_into_a_range ... ok
test tests::add_inserts_exactly_one_entry_and_keeps_the_rest ... ok
test tests::log_add_then_close_makes_a_range ... ok
test tests::shared_vectors ... ok
test tests::today_follows_the_device_offset ... ok
test tests::opening_the_same_day_at_once_makes_one_note ... ok
test tests::make_note_on_a_log_line_keeps_times_and_tags ... ok
test times_tests::a_line_with_only_tags_stays_words ... ok
test times_tests::any_line_is_safe ... ok
test times_tests::invalid_spaced_twelve_hour_suffix_stays_a_word_after_a_24_hour_time ... ok
test times_tests::only_a_day_note_has_times ... ok
test tests::two_offline_devices_starting_the_same_day_merge_into_one_note ... ok
test times_tests::trailing_tags_on_any_line ... ok
test times_tests::a_log_line_splits_into_times_words_and_tags ... ok
test tests::no_file_until_the_first_keystroke ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_engine-ff3aa4aa42431a1a)

running 16 tests
test hash::tests::key_order_does_not_matter_but_content_does ... ok
test tests::a_plugin_cannot_write_outside_its_namespace ... ok
test tests::a_retry_runs_once_and_replays_the_result ... ok
test tests::a_huge_job_never_delays_anyone ... ok
test tests::bad_input_and_unknown_actions_are_friendly ... ok
test tests::changes_need_a_key_reads_do_not ... ok
test tests::connected_follows_live_views ... ok
test tests::identical_calls_at_the_same_moment_run_once ... ok
test tests::journal_pages_continue_where_they_stopped ... ok
test tests::no_write_is_lost_while_users_are_released_and_reopened ... ok
test tests::perf_huge_job_action_latency ... ignored, action latency budgets run on the perf VM via perf/ordinary-latency-vm.sh
test tests::a_user_with_a_live_view_or_a_running_action_is_kept ... ok
test tests::users_never_see_each_other ... ok
test tests::an_action_that_outlives_shutdown_commits_nothing ... ok
test tests::shutdown_waits_for_running_actions_and_refuses_new_ones ... ok
test tests::an_idle_user_is_released_and_comes_back_with_nothing_lost ... ok

test result: ok. 15 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.46s

     Running unittests src/lib.rs (target/debug/deps/calternal_fixtures-6f98542429b58355)

running 5 tests
test dates::tests::round_trips_and_formats ... ok
test rng::tests::same_seed_same_numbers ... ok
test tests::same_seed_same_bytes_other_seed_other_bytes ... ok
test tests::looks_like_a_real_home ... ok
test tests::full_gate_has_enough_disjoint_samples ... ok

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

     Running unittests src/main.rs (target/debug/deps/calternal_fixtures-f234eac8403fa749)

running 0 tests

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

     Running unittests src/lib.rs (target/debug/deps/calternal_fsio-ee3ae0acac8e7ccc)

running 112 tests
test beneath::review_754d::review_754d_open_sub_must_keep_its_ancestry ... ok
test beneath::tests::paths_that_climb_out_are_refused ... ok
test beneath::tests::temp_files_persist_without_replacing_and_vanish_when_dropped ... ok
test swap::create_tests::create_preserves_outside_file_appearing_after_absence_check ... ok
test swap::create_tests::unsupported_exchange_never_replaces_an_existing_file ... ok
test beneath::resolver::tests::missing_openat2_leaves_the_scope_unmeasured_without_fallback ... ok
test beneath::resolver::tests::unsupported_handles_exhaust_the_pin_budget_without_publishing ... ok
test tests::atomic_write_replaces_and_leaves_no_temp_files ... ok
test beneath::tests::walking_without_openat2_refuses_symlinks_too ... ok
test tests::case_only_collision_rolls_back_or_keeps_the_staged_original ... ok
test tests::a_published_directory_retains_ownership_when_a_parent_flush_fails ... ok
test tests::case_only_rename_preserves_a_different_destination ... ok
test tests::case_only_rename_works_and_other_clashes_are_refused ... ok
test tests::delta_rename_must_preserve_file_arriving_after_absence_check ... ok
test tests::dropping_data_lock_releases_it_even_with_an_inherited_file_handle ... ok
test tests::a_private_directory_is_invisible_until_exclusive_publication ... ok
test tests::directory_publication_rechecks_changed_inheritance_policy ... ok
test tests::failed_write_keeps_the_old_file ... ok
test tests::many_files_are_replaced_whole ... ok
test tests::many_new_files_never_replace_anything ... ok
test tests::names_fold_case_and_unicode_form ... ok
test tests::named_bulk_staging_is_whole_exclusive_and_leaves_no_temporary_name ... ok
test tests::only_one_process_owns_a_data_folder ... ok
test tests::prepared_writes_land_only_when_placed ... ok
test tests::rename_preserves_a_dangling_destination_symlink ... ok
test tests::private_directory_publication_preserves_a_destination_that_arrives ... ok
test tests::staged_bulk_keeps_the_destination_default_acl ... ok
test tests::staged_bulk_preserves_occupied_files_and_falls_back_when_staging_is_missing ... ok
test tests::unique_names_skip_case_and_form_clashes ... ok
test tests::write_unless_changed_keeps_someone_elses_version ... ok
test usage::admission_tests::scoped_admission_does_not_measure_an_unrelated_unreadable_home ... ok
test usage::admission_tests::scoped_admission_recounts_growth_deletion_and_cross_home_moves ... ok
test usage::independent_review::independent_crash_child ... ignored, helper process for the controlled SIGKILL test
test tests::parallel_bulk_preserves_result_slots_and_observes_the_final_sync ... ok
test tests::big_writes_arrive_whole ... ok
test usage::independent_review::independent_external_edits_and_startup ... ok
test usage::independent_review::independent_kill_between_observation_and_counter_publish ... ok
test usage::independent_review::independent_non_utf8_filename_on_startup ... ok
test usage::independent_review::independent_folder_and_file_moves ... ok
test usage::independent_review::independent_unreadable_regular_file_on_startup ... ok
test usage::inode_watch::platform::tests::inode_listener_stops_under_continuous_outside_writes ... ok
test usage::reconcile::tests::reconciliation_wait_is_bounded_by_the_scope_deadline ... ok
test usage::regressions::existing_directory_moves_trash_restore_delete_match_walk ... ok
test usage::independent_review::independent_concurrent_app_and_outside_replacements ... ok
test usage::regressions::hard_link_in_place_change_must_match_walk ... ok
test usage::regressions::native_publish_then_outside_move_must_match_walk ... ok
test usage::regressions::hard_links_created_after_startup_and_alias_replacement_converge ... ok
test usage::regressions::stopped_server_changes_are_recounted ... ok
test usage::regressions::write_via_hard_link_outside_watch_must_match_walk ... ok
test usage::retained_failures::disjoint_failures_and_failed_full_recounts_retain_the_union ... ok
test usage::review_754b::health_is_retained_without_io_and_cleared_by_a_successful_full_scan ... ok
test usage::review_754b::raw_listing_and_quota_distinguish_two_invalid_names_and_their_display_name ... ok
test usage::review_754b::scoped_failure_must_not_forget_other_retained_unmeasured_subtrees ... ok
test usage::review_754b::symlinks_and_special_entries_do_not_charge_or_pollute_health ... ok
test usage::review_754b::unreadable_sparse_regular_file_is_measured_without_read_access ... ok
test usage::review_754c::review_754c_mixed_scoped_retries_retain_exact_union_until_full_success ... ok
test usage::review_754c::review_754c_ordinary_edits_during_recounts_do_not_poison_health ... ok
test usage::scan::containment::moving_ancestor_invalidates_unchanged_child_descriptor ... ok
test usage::scan::containment::removed_directory_is_unmeasured_instead_of_successfully_empty ... ok
test usage::scan::containment::rename_at_end_of_walk_invalidates_already_observed_metadata ... ok
test usage::scan::property::directory_moved_after_its_recursion_returns_rejects_the_whole_scope ... ok
test usage::scan::property::expired_scope_deadline_performs_no_walk ... ok

running 1 test
quota containment: 32 seeded bind/tmpfs topologies passed
test usage::scan::property::mounts::seeded_bind_and_tmpfs_topologies_exclude_mounts_and_recover ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 111 filtered out; finished in 0.09s

test usage::scan::property::mounts::seeded_bind_and_tmpfs_topologies_exclude_mounts_and_recover ... ok
test usage::scan::property::repeated_users_replacement_exhausts_three_attempts_without_charging ... ok

running 1 test
test usage::scan::property::review_754d_scan::review_754d_mount_appearing_during_walk_is_currently_in_scope ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 111 filtered out; finished in 0.00s

test usage::scan::property::review_754d_scan::review_754d_mount_appearing_during_walk_is_currently_in_scope ... ok
test usage::scan::property::review_754d_scan::review_754d_outer_reconciliation_must_bound_restarts ... ok
test usage::scan::property::review_754d_scan::review_754d_refresh_must_not_follow_a_replaced_parent_symlink ... ok
test usage::scan::property::review_754d_scan::review_754d_returned_directory_charges_bytes_that_returned_with_it ... ok
test usage::scan::property::review_754d_scan::review_754d_reused_directory_inode_must_not_certify_a_replacement ... ok
cp: failed to clone '/tmp/quota-independent-192785-6/users/b/copy' from '/tmp/quota-independent-192785-6/users/a/sparse': Operation not supported
test usage::independent_review::independent_sparse_large_zero_and_symlinks ... ok
test usage::regressions::removing_or_moving_the_watched_alias_retains_external_write_coverage ... ok
test usage::scan::review_754b_scan::opened_parent_moved_outside_home_must_not_be_walked ... ok
test usage::scan::review_754c_scan::review_754c_deletion_after_last_stat_discards_snapshot_and_recount_succeeds ... ok
test usage::scan::review_754c_scan::review_754c_raw_names_unreadable_sparse_files_and_symlinks ... ok
test usage::scan::review_754c_scan::review_754c_rename_at_each_depth_rejects_then_rescans_and_accepts_return ... ok
test usage::scan::review_754c_scan::review_754c_replaced_users_root_cannot_charge_new_outside_files ... ok
test usage::scan::review_754c_scan::review_754c_swapping_folders_invalidates_both_open_descriptors ... ok
test usage::tests::a_change_that_becomes_unmeasurable_during_recount_reports_failure ... ok
test usage::tests::a_move_target_already_seen_by_a_recount_is_not_charged_twice ... ok
test usage::tests::a_separate_state_root_counts_what_plugins_report ... ok
test usage::tests::application_writes_through_directory_aliases_charge_the_real_file_once ... ok
test usage::tests::background_accounts_for_outside_edits_and_directory_moves ... ok
test usage::tests::background_does_not_count_symlink_targets ... ok
test usage::tests::background_notices_a_created_and_replaced_users_tree ... ok
test usage::tests::bulk_writes_and_published_folders_count_without_a_recount ... ok
test usage::tests::changes_keep_history_only_during_a_recount_even_after_failure ... ok
test usage::tests::incomplete_measurements_remain_visible_until_a_full_recount ... ok
test usage::tests::raw_names_survive_startup_and_scoped_repair ... ok
test usage::tests::reads_do_not_wait_for_the_counter_writer ... ok
test usage::tests::recount_does_not_charge_directory_aliases_twice ... ok
test usage::tests::recount_preserves_concurrent_writes_and_deletes ... ok
test usage::tests::stale_metadata_cannot_replace_a_newer_update ... ok
test usage::tests::unreadable_subtree_is_a_retained_failure_not_zero_usage ... ok
test usage::tests::writes_moves_trash_and_purge_update_without_a_recount ... ok

running 1 test
test usage::watch::independent_review_755::abrupt_stop_during_registration_reopens_acknowledged_files ... ok
test usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames ... ok
test usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota ... ok
test usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration ... ok
test usage::watch::independent_review_755::registration_recount_repairs_window_mutations_and_merges_app_writes ... ok
test usage::watch::randomized::missing_new_folder_repairs_only_its_home ... ok
test usage::watch::randomized::temporary_rename_paths_do_not_repair_unrelated_homes ... ok
test usage::independent_review::independent_hardlink_lifecycle ... ok
test usage::watch::randomized::write_then_unlink_event_name_repairs_surviving_aliases ... ok
test usage::watch::recovery::tests::successful_recount_with_restored_watches_turns_polling_off ... ok
test usage::watch::tests::a_file_removed_before_native_watch_install_is_transient ... ok
test usage::watch::tests::dropping_usage_wakes_the_idle_event_worker ... ok
test usage::watch::tests::fallback_recounts_when_due_even_with_queued_events ... ok
test usage::watch::tests::gathering_stops_at_its_deadline_even_with_queued_events ... ok
test usage::watch::tests::watcher_registration_never_blocks_startup_or_initial_accounting ... ok
test usage::scan::property::two_thousand_seeded_topology_changes_match_final_tree_or_retry ... ok
test usage::watch::randomized::ten_thousand_random_operation_sequences_match_full_walk ... ok
test usage::scan::property::review_754d_scan::review_754d_twenty_thousand_additional_topologies ... ok

test result: ok. 111 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 38.71s

     Running tests/review_754d_mount.rs (target/debug/deps/review_754d_mount-c647d341d08c48e4)

running 2 tests

running 1 test

running 1 test
test review_754d_tmpfs_mount_is_currently_in_scope ... ok

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

test review_754d_bind_mount_is_currently_in_scope ... ok

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

test review_754d_tmpfs_mount_is_currently_in_scope ... ok
test review_754d_bind_mount_is_currently_in_scope ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_memory-3b65467e6e94a530)

running 3 tests
test tests::huge_pages_go_off ... ok
test tests::nested_bursts_defer_automatic_reclamation_and_unwind_releases_them ... ok
test tests::trimming_is_harmless ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_migrate_v0-f1da720039731837)

running 37 tests
test tests::rules::dry_run_writes_nothing ... ok
test tests::rules::m1_custom_daily_title_and_heading_stay ... ok
test tests::rules::edited_files_are_never_overwritten_without_asking ... ok
test tests::rules::m10_tz_markers_go_and_other_zones_convert_to_the_notes_zone ... ok
test tests::rules::m1_daily_notes_get_day_names_ids_and_lose_generated_headings ... ok
test tests::rules::m1_titles_come_from_title_then_h1_then_file_name_and_stay_unique ... ok
test tests::rules::m2_attachments_that_exist_are_copied_and_relinked ... ok
test tests::rules::m2_code_is_never_rewritten ... ok
test tests::rules::m2_unresolved_links_stay_as_written_and_are_reported ... ok
test tests::rules::m2_wikilinks_always_become_standard_links ... ok
test tests::rules::m2_links_are_repaired_by_name_date_title_and_slug ... ok
test tests::rules::m4_unreferenced_block_ids_go_and_referenced_ones_stay ... ok
test tests::rules::m5_unreadable_dates_fall_back ... ok
test tests::rules::m3_m5_frontmatter_keys_drop_and_times_convert ... ok
test tests::rules::m7_tasks_blocks_are_stripped_and_listed ... ok
test tests::rules::m6_conflict_copies_are_not_migrated ... ok
test tests::rules::m8_only_notes_and_linked_files_move ... ok
test tests::units::every_v0_time_shape_converts ... ok
test tests::units::file_names_give_titles ... ok
test tests::rules::running_twice_gives_the_same_bytes ... ok
test tests::units::keys_ignore_case_encoding_quotes_and_md ... ok
test tests::units::unix_times_become_india_time ... ok
test tests::units::links_parse_in_every_shape ... ok
test tzmarker::tests::a_conversion_that_leaves_the_day_is_kept_and_reported ... ok
test tzmarker::tests::berlin_converts_inside_the_day ... ok
test tzmarker::tests::code_is_never_touched ... ok
test tzmarker::tests::day_from_a_date_value ... ok
test tzmarker::tests::eu_summer_time_edges ... ok
test tzmarker::tests::no_zone_in_the_note_means_strip_only ... ok
test tzmarker::tests::marker_at_the_end_or_tight_leaves_no_stray_space ... ok
test tzmarker::tests::not_a_marker_is_left_alone ... ok
test tzmarker::tests::same_zone_just_goes ... ok
test tzmarker::tests::second_run_changes_nothing ... ok
test tzmarker::tests::styles_survive_conversion ... ok
test tzmarker::tests::unknown_zone_or_a_non_log_line_is_kept_and_counted ... ok
test write::tests::migration_preserves_files_changed_after_preflight ... ok
test tests::no_new_markers::nothing_writes_a_tz_marker ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_notes-79d3b5f37adfa616)

running 461 tests
test anchor::tests::lines_by_utf16_index ... ok
test backlinks::tests::snippets_are_the_trimmed_line ... ok
test anchor::tests::hash_is_plain_sha256_hex ... ok
test backlinks::tests::links_are_fold_keys_and_lines ... ok
test blocks::tests::finds_list_children_and_heading_sections ... ok
test blocks::tests::line_edits ... ok
test blocks::tests::shapes_keep_markers ... ok
test blocks::tests::titles_from_the_first_sentence ... ok
test backlinks::writes::tests::replacement_still_works_while_the_source_index_is_dropped ... ok
test backlinks::writes::tests::changed_lines_duplicates_and_corrupt_values_are_replaced ... ok
test backlinks::writes::tests::identical_multisets_do_not_write_even_when_order_changes ... ok
test bulk::undo::tests::inverse_restores_the_text ... ok
test diff::tests::an_inserted_line_starts_at_a_line_start ... ok
test bulk::undo::tests::inverse_roundtrips ... ok
test bulk::error_tests::legacy_job_reports_hide_stored_source_details ... ok
test diff::tests::emoji_positions_are_utf16 ... ok
test diff::tests::small_change_is_a_small_edit ... ok
test bulk::error_tests::failed_job_reports_keep_source_details_in_the_server_error ... ok
test file_stamp::tests::filesystem_metadata_uses_nanoseconds_and_the_exact_relative_path ... ok
test file_stamp::tests::stable_vectors_cover_unicode_and_extreme_scalars ... ok
test frontmatter::tests::h1_skips_code_and_frontmatter ... ok
test frontmatter::tests::quoting ... ok
test frontmatter::tests::reads_keys ... ok
test frontmatter::tests::set_adds_a_line_or_a_block ... ok
test frontmatter::tests::set_changes_only_the_value ... ok
test frontmatter::tests::set_is_utf16_aware ... ok
test health::tests::anchors ... ok
test diff::tests::edits_never_split_a_character ... ok
test history::blobs::tests::photo_chunks_preserve_folding_unknown_fields_and_line_endings ... ok
test file_stamp::tests::each_field_and_path_byte_affects_the_stamp ... ok
test history::companions::import_cache_tests::prepared_companions_are_applied_on_insert_or_roll_back_with_the_plan ... ok
test history::companions::import_cache_tests::import_cache_budget_returns_after_success_and_failure ... ok
test diff::tests::edits_turn_old_into_new ... ok
test history::companions::tests::a_companion_lands_with_its_change ... ok
test history::companions::tests::keys_answer_without_reading_bytes_and_cover_older_rows ... ok
test history::companions::migration_tests::old_staging_allocation_order_migrates_to_application_order ... ok
test history::companions::tests::rejected_companion_writes_leave_history_and_quota_unchanged ... ok
test history::companions::tests::staged_rows_wait_for_their_step ... ok
test history::companions::tests::retained_bytes_follow_every_change_and_match_a_full_count ... ok
test history::companions::tests::written_marks_and_unwritten_rows ... ok
test history::tests::a_busy_begin_reports_its_cause_without_running_the_job ... ok
test history::memory_tests::batch_admission_failure_dooms_its_lane_before_a_later_write ... ok
test history::tests::a_failed_commit_never_replies_with_a_successful_statement_result ... ok
test history::tests::a_failed_statement_rolls_back_and_reports_the_cause_to_the_whole_group ... ok
test history::tests::a_competing_writer_cannot_invalidate_a_history_write_snapshot ... ok
test history::memory_tests::history_payload_bytes_are_bounded_per_home_and_globally_until_completion ... ok
test history::tests::appends_are_ordered_and_readable ... ok
test history::tests::background_save_bookkeeping_shares_edits_without_early_receipts ... ok
test history::tests::disk_full_keeps_the_cause_and_failed_writes_can_be_retried ... ok
test history::tests::pending_save_promotes_to_base ... ok
test index::snapshot_tests::bounded_snapshots_keep_owned_rows_across_holes_and_slot_reuse ... ok
test index::tests::a_shared_path_answers_with_the_newest_note ... ok
test index::tests::a_torn_tail_cannot_swallow_the_next_durable_mapping ... ok
test index::tests::compacts_when_it_grows ... ok
test history::blobs::tests::fifty_two_weekly_edits_share_the_unchanged_original_photo ... ok
test index::tests::imported_mappings_share_one_log_append_and_survive_reload ... ok
test index::tests::reload_speed ... ignored
test index::tests::survives_reload_renames_and_torn_lines ... ok
test index::tests::under_finds_exact_paths_and_descendants_with_folded_names ... ok
test index::tests::under_keeps_shadowed_paths_for_watcher_removal ... ok
test index::tests::unloads_and_reloads ... ok
test links::escaped_labels::generated_labels_round_trip_and_custom_markup_survives_retargeting ... ok
test home::background_task_tests::finished_background_tasks_are_reaped_during_normal_operation ... ok
test links::tests::finds_standard_and_old_style_links ... ok
test links::tests::frontmatter_code_samples_do_not_hide_body_links ... ok
test links::tests::longer_backtick_fence_does_not_close_on_three_ticks ... ok
test links::tests::nested_brackets_in_text ... ok
test links::tests::nested_fences_and_indented_code_follow_commonmark_boundaries ... ok
test links::tests::normal_fence_control_keeps_links_after_the_block ... ok
test links::tests::relative_paths ... ok
test links::tests::resolves_relative_to_the_linking_note ... ok

Full workspace tests at head 30f65caf: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed on the first run; no #757 rerun was needed. Output verbatim, part 2/4: ```text Running tests/layout.rs (target/debug/deps/layout-4430054a6229ec02) running 13 tests test apple_example_note_matches_the_published_layout ... ok test google_custom_labels_and_non_gregorian_birthdays_keep_their_wire_details ... ok test adr_has_three_readable_examples ... ok test markdown_related_links_with_spaces_and_unicode_are_reversible ... ok test not_a_field_and_other_sections_stay_exact ... ok test independent_phone_and_note_edits_preserve_local_spelling ... ok test notes_are_plain_text_two_way_through_nested_headings ... ok test photo_reference_is_an_attachment_io_boundary ... ok test renaming_an_apple_label_changes_only_its_label_property ... ok test phone_edit_appends_to_group_and_keeps_spacing_and_local_lines ... ok test each_visible_edit_preserves_other_raw_lines ... ok test typed_edits_after_reading_a_note_patch_the_readable_card ... ok test readable_layout_and_all_agreed_fields ... ok test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/roundtrip.rs (target/debug/deps/roundtrip-1a666d90e350de63) running 10 tests test editing_geo_keeps_coordinate_precision_and_semicolon_structure ... ok test add_delete_and_repeated_fields_keep_the_right_occurrence ... ok test new_and_edited_canonical_notes_are_identical_after_wire_import ... ok test new_contact_uid_is_note_id_and_default_is_three ... ok test hand_edit_uses_external_original_until_export ... ok test structured_names_addresses_labels_and_partial_dates_are_typed ... ok test reordering_fields_and_changing_value_tags_cannot_make_an_unstable_note ... ok test version_mapping_keeps_phone_text_preferences_and_photo_bytes ... ok test corpus_is_identical_in_both_directions ... ok test editing_each_field_changes_only_its_raw_occurrence ... ok test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Running unittests src/lib.rs (target/debug/deps/calternal_contacts_actions-36b7f1d2027050e3) running 130 tests test cards::tests::ids_cannot_leave_the_folder ... ok test facts::tests::a_card_without_a_name ... ok test frontmatter::tests::no_frontmatter_is_left_alone ... ok test facts::tests::reads_name_and_facts_in_order ... ok test frontmatter::tests::a_body_divider_is_not_frontmatter ... ok test cards::tests::copies_are_written_whole_and_removed ... ok test frontmatter::tests::splits_and_joins_back_exactly ... ok test jobs::tests::attempts_are_stable_and_distinct ... ok test import::tests::identity_is_the_uid_or_the_bytes ... ok test names::tests::bidi_controls_never_reach_a_file_name_but_joiners_do ... ok test names::tests::a_fact_equal_to_the_name_is_skipped ... ok test names::tests::empty_and_emoji_names ... ok test names::tests::clashes_add_the_first_fact_then_a_number ... ok test names::tests::illegal_characters_become_dashes ... ok test names::tests::nfd_and_nfc_give_one_name ... ok test namer::tests::names_come_from_the_note_and_its_card ... ok test names::tests::case_and_unicode_form_clash ... ok test names::tests::long_names_are_cut_between_whole_characters ... ok test tests::basics::bad_cards_are_refused_and_nothing_is_written ... ok test tests::basics::a_retry_with_the_same_key_makes_one_contact ... ok test tests::basics::contact_actions_never_touch_other_notes ... ok test tests::basics::a_new_name_renames_and_links_follow ... ok test tests::basics::update_merges_and_keeps_typing ... ok test tests::basics::create_writes_the_note_and_its_card ... ok test tests::basics::delete_goes_to_the_trash_and_restore_brings_it_back ... ok test tests::break_links::case_only_renames ... ok test tests::break_links::a_rename_onto_an_existing_file ... ok test tests::break_links::code_stays_and_anchors_travel ... ok test tests::break_links::deleted_forever_links_say_so ... ok test tests::break_links::nfc_and_nfd_names ... ok test tests::break_links::relative_links_from_subfolders ... ok test tests::break_links::rename_chains ... ok test tests::break_links::rename_while_another_client_edits_a_linking_note ... ok test tests::break_links::the_checker_finds_dangling_links ... ok test tests::break_links::the_title_never_renames_a_contact_file ... ok test tests::break_names::a_name_an_existing_note_has ... ok test tests::break_names::empty_and_emoji_names ... ok test tests::break_names::names_differing_only_in_case_are_one_name ... ok test tests::break_names::the_folder_is_a_setting ... ok test tests::break_names::unsafe_characters_never_reach_the_file_name ... ok test tests::break_links::swapping_two_names ... ok test tests::correctness::acknowledged_edit_between_undo_preparation_and_deletion_survives ... ok test tests::break_names::very_long_names_fit_the_byte_limit ... ok test tests::correctness::crash_after_unlink_finishes_history_and_quota_on_restart ... ok test tests::correctness::deletion_crash_child ... ok test tests::correctness::deletion_recovery_preserves_an_outside_edit_made_while_down ... ok test tests::break_names::clashes_add_company_then_city_then_nickname_then_domain_then_a_number ... ok test tests::correctness::failed_partial_import_releases_every_prepared_card_exactly ... ok test tests::env::pause_markers_accept_serial_and_parallel_child_harness_output ... ok test tests::env::fixture_releases_its_engine_and_stores ... ok test tests::correctness::bounded_shutdown_joins_the_card_write_and_refuses_later_copies ... ok test tests::import::an_import_makes_every_new_contact_in_one_job ... ok test tests::import::a_final_flush_failure_in_an_existing_folder_preserves_earlier_contacts ... ok test tests::import::limits_hold ... ok test tests::import::a_final_flush_failure_undoes_every_published_contact_and_can_retry ... ok test tests::import::the_same_file_twice_changes_nothing ... ok test tests::kill9::child ... ok test tests::import::bulk_import_preserves_an_id_held_only_by_trash_details ... ok test tests::import::parallel_import_keeps_input_order_and_compares_existing_peer_facts ... ok test tests::kill9::create_killed_prepared ... ok test tests::break_links::five_thousand_links_across_a_thousand_notes ... ok test tests::kill9::create_killed_committed ... ok test tests::kill9::create_killed_copying ... ok test tests::kill9::edit_killed_committed ... ok test tests::kill9::import_killed_committed ... ok test tests::kill9::import_killed_copying ... ok test tests::kill9::edit_killed_copying ... ok test tests::kill9::import_killed_mid_import ... ok test tests::kill9::rename_killed_committed ... ok test tests::kill9::import_killed_planned ... ok test tests::kill9::rename_killed_mid_rename ... ok test tests::kill9::rename_killed_planned ... ok test tests::kill9::import_killed_prepared ... ok test tests::naming::an_h1_typed_in_the_app_renames_by_the_contacts_rule ... ok test tests::kill9::rename_killed_copying ... ok test tests::naming::restoring_into_a_taken_name_uses_the_contacts_rule ... ok test tests::related::a_related_namesake_in_the_same_import_wins_over_the_book ... ok test tests::related::an_unchanged_phone_resend_changes_nothing ... ok test tests::related::create_and_update_link_one_person_and_leave_namesakes_plain ... ok test tests::kill9::edit_killed_prepared ... ok test tests::related::related_names_from_one_import_link_to_the_files_made ... ok test tests::review3::a_card_saved_with_a_byte_order_mark_is_read ... ok test tests::review3::a_uidless_card_edited_on_the_phone_then_imported_again_is_not_a_duplicate ... ok test tests::review3::bidi_controls_never_reach_a_file_name ... ok test tests::review3::contact_writes_are_refused_after_shutdown ... ok test tests::review3::imports_and_photo_cards_count_against_the_storage_limit ... ok test tests::kill9::rename_killed_prepared ... ok test tests::review3::undo_of_a_contact_change_is_held_to_the_limit ... ok test tests::review3::same_size_photo_swaps_are_held_to_the_limit ... ok test tests::review::both_ends_in_trash_restore_source_before_target_keeps_identity ... ok test tests::review::concurrent_undo_and_staged_update_keep_note_and_card_together ... ok test tests::review::crash_child ... ok test tests::review::device_name_before_extension_is_safe ... ok test tests::review::import_shared_company_uses_distinguishing_city_and_identical_facts_use_numbers ... ok test tests::props::random_sequences_keep_every_invariant ... ok test tests::review::kill9_delete_before_progress ... ok test tests::review::kill9_delete_only_runtime_inverse ... ok test tests::related::every_related_link_reaches_the_person_it_names ... ok test tests::review3::undoing_an_import_releases_everything_it_kept ... ok test tests::review::kill9_import_after_history_transaction ... ok test tests::review::kill9_import_during_file_placement ... ok test tests::review::kill9_import_after_directory_sync ... ok test tests::review::kill9_import_after_first_file ... ok test tests::review::kill9_restore_after_incoming_link_repair ... ok test tests::review::kill9_restore_after_outgoing_link_repair ... ok test tests::review::kill9_import_into_existing_folder_after_first_file ... ok test tests::review::kill9_restore_before_outgoing_link_repair ... ok test tests::review::kill9_restore_before_progress ... ok test tests::review::kill9_runtime_inverse ... ok test tests::review::link_in_trash_follows_rename ... ok test tests::review::kill9_import_private_files_before_history ... ok test tests::review::rename_to_unbalanced_bracket_keeps_a_markdown_link ... ok test tests::review::replayed_delete_only_runtime_inverse_restores_only_job_edit ... ok test tests::review::replayed_runtime_inverse_restores_only_job_edit ... ok test tests::review::restore_does_not_resurrect_a_removed_link_or_retarget_its_identical_replacement ... ok test tests::review::restore_into_taken_name_preserves_link_identity ... ok test tests::review::kill9_restore_before_incoming_link_repair ... ok test tests::review::same_company_uses_city ... ok test tests::review::undo_refuses_a_later_phone_card_before_moving_or_retargeting_anything ... ok test tests::sweep::the_sweep_drops_cards_of_contacts_gone_for_good ... ok test tests::sweep::undo_and_deleting_forever_sweep_at_once ... ok test tests::review::kill9_import_into_existing_folder_after_directory_sync ... ok test tests::undo::a_retry_after_a_failed_rename_retries_cleanly_and_never_doubles ... ok test tests::undo::undo_of_a_rename_takes_the_card_back_with_the_note ... ok test tests::review::ordinary_tag_job_and_undo_preserve_concurrent_typing ... ok test write::tests::keyed_ids_are_stable ... ok test write::tests::old_titles_cover_name_file_and_clash_forms ... ok test tests::undo::undo_of_an_import_takes_every_contact_back ... ok test tests::undo::a_batch_that_fails_part_way_is_undone_completely ... ok test tests::review::ring_import_1000_swaps_chains_unicode_h1_and_undo ... ok test result: ok. 130 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 22.27s Running unittests src/lib.rs (target/debug/deps/calternal_core-22753e58953721f1) running 13 tests test action::tests::namespace_is_enforced ... ok test batch::tests::stops_at_the_first_error ... ok test drain::tests::close_gives_up_after_its_bound ... ok test batch::tests::visits_everything_once_in_order ... ok test error::tests::every_code_has_a_friendly_message ... ok test journal::tests::junk_tokens_ask_for_a_refresh ... ok test drain::tests::close_waits_for_work_already_in_and_refuses_new_work ... ok test plugin::tests::plugins_stay_in_their_namespace ... ok test journal::tests::tokens_round_trip ... ok test room_queue::tests::control_messages_can_release_rooms_when_payload_budgets_are_full ... ok test room_queue::tests::budgets_count_bytes_and_release_on_receive_and_drop ... ok test room_queue::tests::deferred_payload_keeps_local_and_global_byte_admission ... ok test room_queue::tests::failed_admission_does_not_leak_reservations ... ok test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_daily-b83339fbd8898931) running 22 tests test day::tests::daylight_saving_uses_the_offset_the_device_sends ... ok test day::tests::midnight_follows_the_device_in_ist ... ok test day::tests::titles_read_like_the_web_app ... ok test day::tests::names_and_ids ... ok test tests::bad_input_is_refused_kindly ... ok test tests::an_existing_day_file_is_reused_whatever_its_id ... ok test tests::any_text_is_safe_to_read_and_plan ... ok test tests::close_turns_one_open_entry_into_a_range ... ok test tests::add_inserts_exactly_one_entry_and_keeps_the_rest ... ok test tests::log_add_then_close_makes_a_range ... ok test tests::shared_vectors ... ok test tests::today_follows_the_device_offset ... ok test tests::opening_the_same_day_at_once_makes_one_note ... ok test tests::make_note_on_a_log_line_keeps_times_and_tags ... ok test times_tests::a_line_with_only_tags_stays_words ... ok test times_tests::any_line_is_safe ... ok test times_tests::invalid_spaced_twelve_hour_suffix_stays_a_word_after_a_24_hour_time ... ok test times_tests::only_a_day_note_has_times ... ok test tests::two_offline_devices_starting_the_same_day_merge_into_one_note ... ok test times_tests::trailing_tags_on_any_line ... ok test times_tests::a_log_line_splits_into_times_words_and_tags ... ok test tests::no_file_until_the_first_keystroke ... ok test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.39s Running unittests src/lib.rs (target/debug/deps/calternal_engine-ff3aa4aa42431a1a) running 16 tests test hash::tests::key_order_does_not_matter_but_content_does ... ok test tests::a_plugin_cannot_write_outside_its_namespace ... ok test tests::a_retry_runs_once_and_replays_the_result ... ok test tests::a_huge_job_never_delays_anyone ... ok test tests::bad_input_and_unknown_actions_are_friendly ... ok test tests::changes_need_a_key_reads_do_not ... ok test tests::connected_follows_live_views ... ok test tests::identical_calls_at_the_same_moment_run_once ... ok test tests::journal_pages_continue_where_they_stopped ... ok test tests::no_write_is_lost_while_users_are_released_and_reopened ... ok test tests::perf_huge_job_action_latency ... ignored, action latency budgets run on the perf VM via perf/ordinary-latency-vm.sh test tests::a_user_with_a_live_view_or_a_running_action_is_kept ... ok test tests::users_never_see_each_other ... ok test tests::an_action_that_outlives_shutdown_commits_nothing ... ok test tests::shutdown_waits_for_running_actions_and_refuses_new_ones ... ok test tests::an_idle_user_is_released_and_comes_back_with_nothing_lost ... ok test result: ok. 15 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.46s Running unittests src/lib.rs (target/debug/deps/calternal_fixtures-6f98542429b58355) running 5 tests test dates::tests::round_trips_and_formats ... ok test rng::tests::same_seed_same_numbers ... ok test tests::same_seed_same_bytes_other_seed_other_bytes ... ok test tests::looks_like_a_real_home ... ok test tests::full_gate_has_enough_disjoint_samples ... ok test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.74s Running unittests src/main.rs (target/debug/deps/calternal_fixtures-f234eac8403fa749) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_fsio-ee3ae0acac8e7ccc) running 112 tests test beneath::review_754d::review_754d_open_sub_must_keep_its_ancestry ... ok test beneath::tests::paths_that_climb_out_are_refused ... ok test beneath::tests::temp_files_persist_without_replacing_and_vanish_when_dropped ... ok test swap::create_tests::create_preserves_outside_file_appearing_after_absence_check ... ok test swap::create_tests::unsupported_exchange_never_replaces_an_existing_file ... ok test beneath::resolver::tests::missing_openat2_leaves_the_scope_unmeasured_without_fallback ... ok test beneath::resolver::tests::unsupported_handles_exhaust_the_pin_budget_without_publishing ... ok test tests::atomic_write_replaces_and_leaves_no_temp_files ... ok test beneath::tests::walking_without_openat2_refuses_symlinks_too ... ok test tests::case_only_collision_rolls_back_or_keeps_the_staged_original ... ok test tests::a_published_directory_retains_ownership_when_a_parent_flush_fails ... ok test tests::case_only_rename_preserves_a_different_destination ... ok test tests::case_only_rename_works_and_other_clashes_are_refused ... ok test tests::delta_rename_must_preserve_file_arriving_after_absence_check ... ok test tests::dropping_data_lock_releases_it_even_with_an_inherited_file_handle ... ok test tests::a_private_directory_is_invisible_until_exclusive_publication ... ok test tests::directory_publication_rechecks_changed_inheritance_policy ... ok test tests::failed_write_keeps_the_old_file ... ok test tests::many_files_are_replaced_whole ... ok test tests::many_new_files_never_replace_anything ... ok test tests::names_fold_case_and_unicode_form ... ok test tests::named_bulk_staging_is_whole_exclusive_and_leaves_no_temporary_name ... ok test tests::only_one_process_owns_a_data_folder ... ok test tests::prepared_writes_land_only_when_placed ... ok test tests::rename_preserves_a_dangling_destination_symlink ... ok test tests::private_directory_publication_preserves_a_destination_that_arrives ... ok test tests::staged_bulk_keeps_the_destination_default_acl ... ok test tests::staged_bulk_preserves_occupied_files_and_falls_back_when_staging_is_missing ... ok test tests::unique_names_skip_case_and_form_clashes ... ok test tests::write_unless_changed_keeps_someone_elses_version ... ok test usage::admission_tests::scoped_admission_does_not_measure_an_unrelated_unreadable_home ... ok test usage::admission_tests::scoped_admission_recounts_growth_deletion_and_cross_home_moves ... ok test usage::independent_review::independent_crash_child ... ignored, helper process for the controlled SIGKILL test test tests::parallel_bulk_preserves_result_slots_and_observes_the_final_sync ... ok test tests::big_writes_arrive_whole ... ok test usage::independent_review::independent_external_edits_and_startup ... ok test usage::independent_review::independent_kill_between_observation_and_counter_publish ... ok test usage::independent_review::independent_non_utf8_filename_on_startup ... ok test usage::independent_review::independent_folder_and_file_moves ... ok test usage::independent_review::independent_unreadable_regular_file_on_startup ... ok test usage::inode_watch::platform::tests::inode_listener_stops_under_continuous_outside_writes ... ok test usage::reconcile::tests::reconciliation_wait_is_bounded_by_the_scope_deadline ... ok test usage::regressions::existing_directory_moves_trash_restore_delete_match_walk ... ok test usage::independent_review::independent_concurrent_app_and_outside_replacements ... ok test usage::regressions::hard_link_in_place_change_must_match_walk ... ok test usage::regressions::native_publish_then_outside_move_must_match_walk ... ok test usage::regressions::hard_links_created_after_startup_and_alias_replacement_converge ... ok test usage::regressions::stopped_server_changes_are_recounted ... ok test usage::regressions::write_via_hard_link_outside_watch_must_match_walk ... ok test usage::retained_failures::disjoint_failures_and_failed_full_recounts_retain_the_union ... ok test usage::review_754b::health_is_retained_without_io_and_cleared_by_a_successful_full_scan ... ok test usage::review_754b::raw_listing_and_quota_distinguish_two_invalid_names_and_their_display_name ... ok test usage::review_754b::scoped_failure_must_not_forget_other_retained_unmeasured_subtrees ... ok test usage::review_754b::symlinks_and_special_entries_do_not_charge_or_pollute_health ... ok test usage::review_754b::unreadable_sparse_regular_file_is_measured_without_read_access ... ok test usage::review_754c::review_754c_mixed_scoped_retries_retain_exact_union_until_full_success ... ok test usage::review_754c::review_754c_ordinary_edits_during_recounts_do_not_poison_health ... ok test usage::scan::containment::moving_ancestor_invalidates_unchanged_child_descriptor ... ok test usage::scan::containment::removed_directory_is_unmeasured_instead_of_successfully_empty ... ok test usage::scan::containment::rename_at_end_of_walk_invalidates_already_observed_metadata ... ok test usage::scan::property::directory_moved_after_its_recursion_returns_rejects_the_whole_scope ... ok test usage::scan::property::expired_scope_deadline_performs_no_walk ... ok running 1 test quota containment: 32 seeded bind/tmpfs topologies passed test usage::scan::property::mounts::seeded_bind_and_tmpfs_topologies_exclude_mounts_and_recover ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 111 filtered out; finished in 0.09s test usage::scan::property::mounts::seeded_bind_and_tmpfs_topologies_exclude_mounts_and_recover ... ok test usage::scan::property::repeated_users_replacement_exhausts_three_attempts_without_charging ... ok running 1 test test usage::scan::property::review_754d_scan::review_754d_mount_appearing_during_walk_is_currently_in_scope ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 111 filtered out; finished in 0.00s test usage::scan::property::review_754d_scan::review_754d_mount_appearing_during_walk_is_currently_in_scope ... ok test usage::scan::property::review_754d_scan::review_754d_outer_reconciliation_must_bound_restarts ... ok test usage::scan::property::review_754d_scan::review_754d_refresh_must_not_follow_a_replaced_parent_symlink ... ok test usage::scan::property::review_754d_scan::review_754d_returned_directory_charges_bytes_that_returned_with_it ... ok test usage::scan::property::review_754d_scan::review_754d_reused_directory_inode_must_not_certify_a_replacement ... ok cp: failed to clone '/tmp/quota-independent-192785-6/users/b/copy' from '/tmp/quota-independent-192785-6/users/a/sparse': Operation not supported test usage::independent_review::independent_sparse_large_zero_and_symlinks ... ok test usage::regressions::removing_or_moving_the_watched_alias_retains_external_write_coverage ... ok test usage::scan::review_754b_scan::opened_parent_moved_outside_home_must_not_be_walked ... ok test usage::scan::review_754c_scan::review_754c_deletion_after_last_stat_discards_snapshot_and_recount_succeeds ... ok test usage::scan::review_754c_scan::review_754c_raw_names_unreadable_sparse_files_and_symlinks ... ok test usage::scan::review_754c_scan::review_754c_rename_at_each_depth_rejects_then_rescans_and_accepts_return ... ok test usage::scan::review_754c_scan::review_754c_replaced_users_root_cannot_charge_new_outside_files ... ok test usage::scan::review_754c_scan::review_754c_swapping_folders_invalidates_both_open_descriptors ... ok test usage::tests::a_change_that_becomes_unmeasurable_during_recount_reports_failure ... ok test usage::tests::a_move_target_already_seen_by_a_recount_is_not_charged_twice ... ok test usage::tests::a_separate_state_root_counts_what_plugins_report ... ok test usage::tests::application_writes_through_directory_aliases_charge_the_real_file_once ... ok test usage::tests::background_accounts_for_outside_edits_and_directory_moves ... ok test usage::tests::background_does_not_count_symlink_targets ... ok test usage::tests::background_notices_a_created_and_replaced_users_tree ... ok test usage::tests::bulk_writes_and_published_folders_count_without_a_recount ... ok test usage::tests::changes_keep_history_only_during_a_recount_even_after_failure ... ok test usage::tests::incomplete_measurements_remain_visible_until_a_full_recount ... ok test usage::tests::raw_names_survive_startup_and_scoped_repair ... ok test usage::tests::reads_do_not_wait_for_the_counter_writer ... ok test usage::tests::recount_does_not_charge_directory_aliases_twice ... ok test usage::tests::recount_preserves_concurrent_writes_and_deletes ... ok test usage::tests::stale_metadata_cannot_replace_a_newer_update ... ok test usage::tests::unreadable_subtree_is_a_retained_failure_not_zero_usage ... ok test usage::tests::writes_moves_trash_and_purge_update_without_a_recount ... ok running 1 test test usage::watch::independent_review_755::abrupt_stop_during_registration_reopens_acknowledged_files ... ok test usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames ... ok test usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota ... ok test usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration ... ok test usage::watch::independent_review_755::registration_recount_repairs_window_mutations_and_merges_app_writes ... ok test usage::watch::randomized::missing_new_folder_repairs_only_its_home ... ok test usage::watch::randomized::temporary_rename_paths_do_not_repair_unrelated_homes ... ok test usage::independent_review::independent_hardlink_lifecycle ... ok test usage::watch::randomized::write_then_unlink_event_name_repairs_surviving_aliases ... ok test usage::watch::recovery::tests::successful_recount_with_restored_watches_turns_polling_off ... ok test usage::watch::tests::a_file_removed_before_native_watch_install_is_transient ... ok test usage::watch::tests::dropping_usage_wakes_the_idle_event_worker ... ok test usage::watch::tests::fallback_recounts_when_due_even_with_queued_events ... ok test usage::watch::tests::gathering_stops_at_its_deadline_even_with_queued_events ... ok test usage::watch::tests::watcher_registration_never_blocks_startup_or_initial_accounting ... ok test usage::scan::property::two_thousand_seeded_topology_changes_match_final_tree_or_retry ... ok test usage::watch::randomized::ten_thousand_random_operation_sequences_match_full_walk ... ok test usage::scan::property::review_754d_scan::review_754d_twenty_thousand_additional_topologies ... ok test result: ok. 111 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 38.71s Running tests/review_754d_mount.rs (target/debug/deps/review_754d_mount-c647d341d08c48e4) running 2 tests running 1 test running 1 test test review_754d_tmpfs_mount_is_currently_in_scope ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.00s test review_754d_bind_mount_is_currently_in_scope ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.00s test review_754d_tmpfs_mount_is_currently_in_scope ... ok test review_754d_bind_mount_is_currently_in_scope ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running unittests src/lib.rs (target/debug/deps/calternal_memory-3b65467e6e94a530) running 3 tests test tests::huge_pages_go_off ... ok test tests::nested_bursts_defer_automatic_reclamation_and_unwind_releases_them ... ok test tests::trimming_is_harmless ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_migrate_v0-f1da720039731837) running 37 tests test tests::rules::dry_run_writes_nothing ... ok test tests::rules::m1_custom_daily_title_and_heading_stay ... ok test tests::rules::edited_files_are_never_overwritten_without_asking ... ok test tests::rules::m10_tz_markers_go_and_other_zones_convert_to_the_notes_zone ... ok test tests::rules::m1_daily_notes_get_day_names_ids_and_lose_generated_headings ... ok test tests::rules::m1_titles_come_from_title_then_h1_then_file_name_and_stay_unique ... ok test tests::rules::m2_attachments_that_exist_are_copied_and_relinked ... ok test tests::rules::m2_code_is_never_rewritten ... ok test tests::rules::m2_unresolved_links_stay_as_written_and_are_reported ... ok test tests::rules::m2_wikilinks_always_become_standard_links ... ok test tests::rules::m2_links_are_repaired_by_name_date_title_and_slug ... ok test tests::rules::m4_unreferenced_block_ids_go_and_referenced_ones_stay ... ok test tests::rules::m5_unreadable_dates_fall_back ... ok test tests::rules::m3_m5_frontmatter_keys_drop_and_times_convert ... ok test tests::rules::m7_tasks_blocks_are_stripped_and_listed ... ok test tests::rules::m6_conflict_copies_are_not_migrated ... ok test tests::rules::m8_only_notes_and_linked_files_move ... ok test tests::units::every_v0_time_shape_converts ... ok test tests::units::file_names_give_titles ... ok test tests::rules::running_twice_gives_the_same_bytes ... ok test tests::units::keys_ignore_case_encoding_quotes_and_md ... ok test tests::units::unix_times_become_india_time ... ok test tests::units::links_parse_in_every_shape ... ok test tzmarker::tests::a_conversion_that_leaves_the_day_is_kept_and_reported ... ok test tzmarker::tests::berlin_converts_inside_the_day ... ok test tzmarker::tests::code_is_never_touched ... ok test tzmarker::tests::day_from_a_date_value ... ok test tzmarker::tests::eu_summer_time_edges ... ok test tzmarker::tests::no_zone_in_the_note_means_strip_only ... ok test tzmarker::tests::marker_at_the_end_or_tight_leaves_no_stray_space ... ok test tzmarker::tests::not_a_marker_is_left_alone ... ok test tzmarker::tests::same_zone_just_goes ... ok test tzmarker::tests::second_run_changes_nothing ... ok test tzmarker::tests::styles_survive_conversion ... ok test tzmarker::tests::unknown_zone_or_a_non_log_line_is_kept_and_counted ... ok test write::tests::migration_preserves_files_changed_after_preflight ... ok test tests::no_new_markers::nothing_writes_a_tz_marker ... ok test result: ok. 37 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s Running unittests src/lib.rs (target/debug/deps/calternal_notes-79d3b5f37adfa616) running 461 tests test anchor::tests::lines_by_utf16_index ... ok test backlinks::tests::snippets_are_the_trimmed_line ... ok test anchor::tests::hash_is_plain_sha256_hex ... ok test backlinks::tests::links_are_fold_keys_and_lines ... ok test blocks::tests::finds_list_children_and_heading_sections ... ok test blocks::tests::line_edits ... ok test blocks::tests::shapes_keep_markers ... ok test blocks::tests::titles_from_the_first_sentence ... ok test backlinks::writes::tests::replacement_still_works_while_the_source_index_is_dropped ... ok test backlinks::writes::tests::changed_lines_duplicates_and_corrupt_values_are_replaced ... ok test backlinks::writes::tests::identical_multisets_do_not_write_even_when_order_changes ... ok test bulk::undo::tests::inverse_restores_the_text ... ok test diff::tests::an_inserted_line_starts_at_a_line_start ... ok test bulk::undo::tests::inverse_roundtrips ... ok test bulk::error_tests::legacy_job_reports_hide_stored_source_details ... ok test diff::tests::emoji_positions_are_utf16 ... ok test diff::tests::small_change_is_a_small_edit ... ok test bulk::error_tests::failed_job_reports_keep_source_details_in_the_server_error ... ok test file_stamp::tests::filesystem_metadata_uses_nanoseconds_and_the_exact_relative_path ... ok test file_stamp::tests::stable_vectors_cover_unicode_and_extreme_scalars ... ok test frontmatter::tests::h1_skips_code_and_frontmatter ... ok test frontmatter::tests::quoting ... ok test frontmatter::tests::reads_keys ... ok test frontmatter::tests::set_adds_a_line_or_a_block ... ok test frontmatter::tests::set_changes_only_the_value ... ok test frontmatter::tests::set_is_utf16_aware ... ok test health::tests::anchors ... ok test diff::tests::edits_never_split_a_character ... ok test history::blobs::tests::photo_chunks_preserve_folding_unknown_fields_and_line_endings ... ok test file_stamp::tests::each_field_and_path_byte_affects_the_stamp ... ok test history::companions::import_cache_tests::prepared_companions_are_applied_on_insert_or_roll_back_with_the_plan ... ok test history::companions::import_cache_tests::import_cache_budget_returns_after_success_and_failure ... ok test diff::tests::edits_turn_old_into_new ... ok test history::companions::tests::a_companion_lands_with_its_change ... ok test history::companions::tests::keys_answer_without_reading_bytes_and_cover_older_rows ... ok test history::companions::migration_tests::old_staging_allocation_order_migrates_to_application_order ... ok test history::companions::tests::rejected_companion_writes_leave_history_and_quota_unchanged ... ok test history::companions::tests::staged_rows_wait_for_their_step ... ok test history::companions::tests::retained_bytes_follow_every_change_and_match_a_full_count ... ok test history::companions::tests::written_marks_and_unwritten_rows ... ok test history::tests::a_busy_begin_reports_its_cause_without_running_the_job ... ok test history::memory_tests::batch_admission_failure_dooms_its_lane_before_a_later_write ... ok test history::tests::a_failed_commit_never_replies_with_a_successful_statement_result ... ok test history::tests::a_failed_statement_rolls_back_and_reports_the_cause_to_the_whole_group ... ok test history::tests::a_competing_writer_cannot_invalidate_a_history_write_snapshot ... ok test history::memory_tests::history_payload_bytes_are_bounded_per_home_and_globally_until_completion ... ok test history::tests::appends_are_ordered_and_readable ... ok test history::tests::background_save_bookkeeping_shares_edits_without_early_receipts ... ok test history::tests::disk_full_keeps_the_cause_and_failed_writes_can_be_retried ... ok test history::tests::pending_save_promotes_to_base ... ok test index::snapshot_tests::bounded_snapshots_keep_owned_rows_across_holes_and_slot_reuse ... ok test index::tests::a_shared_path_answers_with_the_newest_note ... ok test index::tests::a_torn_tail_cannot_swallow_the_next_durable_mapping ... ok test index::tests::compacts_when_it_grows ... ok test history::blobs::tests::fifty_two_weekly_edits_share_the_unchanged_original_photo ... ok test index::tests::imported_mappings_share_one_log_append_and_survive_reload ... ok test index::tests::reload_speed ... ignored test index::tests::survives_reload_renames_and_torn_lines ... ok test index::tests::under_finds_exact_paths_and_descendants_with_folded_names ... ok test index::tests::under_keeps_shadowed_paths_for_watcher_removal ... ok test index::tests::unloads_and_reloads ... ok test links::escaped_labels::generated_labels_round_trip_and_custom_markup_survives_retargeting ... ok test home::background_task_tests::finished_background_tasks_are_reaped_during_normal_operation ... ok test links::tests::finds_standard_and_old_style_links ... ok test links::tests::frontmatter_code_samples_do_not_hide_body_links ... ok test links::tests::longer_backtick_fence_does_not_close_on_three_ticks ... ok test links::tests::nested_brackets_in_text ... ok test links::tests::nested_fences_and_indented_code_follow_commonmark_boundaries ... ok test links::tests::normal_fence_control_keeps_links_after_the_block ... ok test links::tests::relative_paths ... ok test links::tests::resolves_relative_to_the_linking_note ... ok ```
Author
Owner

Full workspace tests at head 30f65caf: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed on the first run; no #757 rerun was needed. Output verbatim, part 3/4:

test links::tests::retarget_follows_the_title_and_keeps_custom_text ... ok
test links::tests::retarget_from_a_subfolder ... ok
test links::tests::retarget_matches_case_and_unicode_forms ... ok
test links::tests::skips_code_images_and_the_web ... ok
test links::tests::tilde_fence_does_not_close_on_trailing_text ... ok
test links::tests::unclosed_fence_hides_links_through_eof ... ok
test meta::descriptions::tests::a_failed_fresh_plugin_batch_rolls_back_its_note_rows_too ... ok
test index::tests::directory_counts_match_full_scan_after_moves_and_reload ... ok
test meta::fields::tests::cache_upgrade_resets_counts_and_link_rows_and_keeps_note_keys_stable ... ok
test meta::fields::tests::stamp_only_changes_keep_sort_fields_and_tags_but_refresh_links ... ok
test meta::scan::tests::a_prepared_scan_cannot_replace_a_later_announced_live_pin ... ok
test meta::scan::tests::an_identity_returning_after_selection_keeps_its_list_row ... ok
test index::tests::answers_like_plain_maps ... ok
test meta::tests::cursors_round_trip_and_reject_junk ... ok
test meta::tests::fresh_fill_restores_checkpointing_after_success_and_failure ... ok
test meta::scan::tests::stamp_walk_preserves_sparse_and_extreme_keys ... ok
test missing::targets::tests::a_name_is_the_file_without_its_folder_and_extension ... ok
test meta::tests::snippets_skip_frontmatter_and_headings ... ok
test missing::targets::tests::names_rank_exact_then_prefix_then_word_then_inside ... ok
test naming::tests::what_fits_and_what_to_try ... ok
test props::tests::already_typed_text_lists_keep_their_comments_and_quotes ... ok
test props::tests::adds_removes_and_quotes_links ... ok
test props::tests::changes_only_the_touched_key ... ok
test props::tests::list_items_are_written_as_text_too ... ok
test props::tests::obsidian_written_yaml_reads ... ok
test props::tests::outside_keys_win_whole_and_unrelated_pending_keys_survive ... ok
test props::tests::quoting_round_trips_tricky_text ... ok
test props::tests::reads_every_list_form ... ok
test props::tests::refuses_what_it_cannot_read ... ok
test props::tests::review_malformed_unrelated_property_blocks_writes ... ok
test props::tests::review_property_case_override_is_honored ... ok
test props::tests::review_text_yaml_types ... ok
test props::tests::scalar_writes_preserve_types_in_both_directions ... ok
test props::tests::selected_display_keys_keep_unrelated_errors_and_source_order ... ok
test props::tests::simple_display_large_numeric_scalars_agree_with_yaml ... ok
test props::tests::simple_display_mapping_is_a_subset_of_valid_yaml ... ok
test props::tests::simple_display_mapping_keeps_full_validation_for_other_yaml ... ok
test meta::descriptions::tests::common_tag_totals_keep_plugin_visibility_filters_and_cursor_scope ... ok
test props::tests::simple_display_scalars_agree_with_the_yaml_validator ... ok
test rename::tests::clash_numbers ... ok
test rename::tests::daily_names ... ok
test rename::tests::h1_is_set_or_added ... ok
test room::acks::tests::varuints_round_trip ... ok
test props::tests::unicode_display_scalars_agree_with_yaml ... ok
test room::actor::retry_tests::malformed_update_remains_a_permanent_refusal ... ok
test room::edit::tests::checks_bounds_overlap_and_surrogates ... ok
test room::pipeline::memory_tests::actor_api_payload_remains_byte_bounded_when_deferred ... ok
test room::actor::retry_tests::retry_budget_failure_requests_rejoin_without_permanent_refusal ... ok
test room::pipeline::memory_tests::global_retry_bytes_refuse_before_mutation_and_release_after_commit ... ok
test room::pipeline::memory_tests::parked_cross_writer_input_is_journaled_before_its_dependency_releases_it ... ok
test room::pipeline::memory_tests::server_and_outside_updates_are_admitted_before_live_mutation ... ok
test room::pipeline::memory_tests::per_room_retry_bytes_apply_backpressure_before_another_update ... ok
test room::save::tests::concurrent_typists_and_saves_converge ... ok
test room::save::tests::kill_nine_mid_save_recovers_title_and_bytes ... ok
test room::save::tests::review::failed_history_outside_edit_cannot_be_acknowledged_before_recovery ... ok
test room::save::tests::review::failed_history_server_edit_cannot_be_acknowledged_before_recovery ... ok
test room::save::tests::review::group_commit::a_parked_step_two_does_not_answer_save_checks ... ok
test room::save::tests::review::group_commit::a_peer_joining_mid_retry_and_typing_is_saved_once_durable ... ok
test room::save::tests::review::group_commit::a_retried_api_edit_sends_its_changed_event ... ok
test room::save::tests::review::group_commit::an_incomplete_step_two_cannot_release_held_save_checks ... ok
test room::save::tests::review::group_commit::edits_typed_during_a_write_commit_together ... ok
test room::save::tests::review::group_commit::a_failed_write_is_never_overtaken ... ok
test room::save::tests::review::group_commit::lanes::checks_after_each_edit_stay_bounded_per_connection ... ok
test room::save::tests::review::group_commit::lanes::doomed_lanes_do_not_roll_back_others ... ok
test room::save::tests::review::group_commit::lanes::mid_batch_failure_with_other_note_typing ... ok
test room::save::tests::review::group_commit::mixed_paths_keep_applied_order_through_retry ... ok
test room::save::tests::review::group_commit::perf_save_checks_under_twenty_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test links::tests::code_block_spans_match_pulldown_on_random_markdown ... ok
test room::save::tests::review::group_commit::saved_arrives_after_storage_recovers_without_new_activity ... ok
test room::save::tests::review::group_commit::two_notes_keep_their_own_order ... ok
test room::save::tests::review::group_commit::save_checks_during_an_outage_stay_bounded ... ok
test room::save::tests::review::history_durability::independent_652_failed_first_typed_edit_must_precede_second ... ok
test room::save::tests::review::history_durability::independent_652_disk_full_mid_burst_then_recovery ... ok
test room::save::tests::review::history_durability::independent_652_queued_api_requires_replay_after_kill9 ... ok
test room::save::tests::review::history_durability::independent_652_queued_crash_child ... ok
test room::save::tests::review::history_durability::independent_652_real_syncclient_joining_snapshot_is_not_saved ... ok
test room::save::tests::review::history_durability::independent_652_outage_queue_and_save_checks ... ok
test room::save::tests::review::history_durability::metadata_refresh_does_not_block_sync_behind_an_uncommitted_seed ... ok
test room::save::tests::review::history_durability::perf_outage_checks_under_two_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test room::save::tests::review::history_durability::retained_failed_edits_keep_the_file_and_list_cache_dirty ... ok
test room::save::tests::review::review_acknowledged_save_child ... ok
test room::save::tests::review::history_durability::independent_652_real_syncclient_peers_and_restart_replay ... ok
test room::save::tests::review::review_delete_set_before_insert_and_trailing_format_marks ... ok
test room::save::tests::review::review_failed_save_retry_and_outside_retry_keep_base_cache ... ok
test room::save::tests::review::review_kill_nine_after_save_reply_preserves_exact_file_history_and_version ... ok
test props::tests::only_intended_keys_change ... ok
test room::save::tests::review::slow_disk::slow_disk_long ... ignored, measurement for the perf VM, not a gate
test room::save::tests::review::slow_disk::slow_disk_matrix ... ignored, measurement for the perf VM, not a gate
test room::save::tests::save_kill_child ... ok
test room::save::tests::saved_bytes_and_titles_match_the_old_copy_path ... ok
test room::save::tests::title_sync_does_not_decode_the_saved_document ... ok
test scan::classify::tests::folded_aliases_are_changed_without_becoming_vanished ... ok
test scan::state::alias_test::a_cache_alias_is_replaced_without_appending_to_its_target ... ok
test scan::state::tests::a_torn_tail_is_ignored_then_removed_before_append ... ok
test scan::state::tests::appended_edits_deletions_and_compaction_keep_the_snapshot ... ok
test scan::tests::day_ids_name_their_files ... ok
test scan::tests::state_round_trips_and_skips_odd_names ... ok
test scan::tests::unchanged_scan_keeps_state_file_and_changed_scan_appends ... ok
test search::tests::a_note_becomes_a_document ... ok
test search::tests::plain_search_lines_borrow_their_text ... ok
test search::tests::search_lines_keep_link_text_and_replacement_order ... ok
test search::tests::titles_fall_back_to_the_file_name ... ok
test smartline::tests::a_plain_line ... ok
test smartline::tests::only_tags_are_words ... ok
test smartline::tests::trailing_tags_only ... ok
test stamp::tests::formats_with_offset ... ok
test storage_crash::kill9_after_ack_during_split_hdd_save_recovers_exact_text ... ok
test storage_crash::storage_child ... ok
test tags::front::tests::every_way_of_writing_tags ... ok
test tags::merge::tests::property_tags_go_with_their_comma_or_line ... ok
test tags::merge::tests::text_tags_go_with_one_space ... ok
test tags::rewrite::tests::merging_keeps_every_tag_once_at_most ... ok
test tags::rewrite::tests::nothing_to_do_is_no_edits ... ok
test tags::rewrite::tests::only_real_tags_change ... ok
test tags::rewrite::tests::positions_count_utf16 ... ok
test tags::rewrite::tests::properties_change_name_only ... ok
test tags::rewrite::tests::rename_and_back_is_the_same_text ... ok
test tags::rewrite::tests::renames_tags_and_nested_tags_only ... ok
test tags::rewrite::tests::renaming_onto_an_existing_tag_merges ... ok
test tags::rewrite::tests::words_code_links_and_headings ... ok
test tags::scan::tests::code_is_never_tags ... ok
test tags::scan::tests::hash_free_lines_still_open_and_close_code_fences ... ok
test tags::scan::tests::headings_and_quotes_keep_their_tags ... ok
test tags::scan::tests::link_targets_and_addresses_are_never_tags ... ok
test tags::scan::tests::not_tags ... ok
test tags::scan::tests::plain_tags ... ok
test tags::tests::nesting_and_cleaning ... ok
test tags::tests::properties_and_text ... ok
test tests::acks::an_older_lineage_is_refused_before_anything_is_sent ... ok
test tests::acks::checks_advance_in_order_and_cover_every_earlier_edit ... ok
test tests::acks::lineage_survives_a_restart ... ok
test tests::acks::saved_means_the_change_is_in_history ... ok
test tests::anchors::an_anchor_follows_its_block_when_lines_shift ... ok
test tests::anchors::an_edited_block_is_refused_never_the_wrong_one ... ok
test tests::anchors::anchors_need_a_hash_and_block_ids_work ... ok
test tests::anchors::history_folds_typing_and_names_jobs ... ok
test tests::anchors::shifting_lines_never_move_the_wrong_block ... ok
test room::save::tests::review::review_title_precedence_edge_matrix ... ok
test tests::appends::an_append_to_a_long_note_stays_small ... ok
test tests::appends::appends_built_directly_match_the_copy_byte_for_byte ... ok
test tests::appends_review::delete_whole_tail_then_append_matches ... ok
test tests::appends_review::frontmatter_map_write_falls_back ... ok
test tests::appends::typists_and_appends_interleave_on_one_note ... ok
test tests::appends_review::trailing_format_marker_bytes ... ok
test tests::delta_review::deleting_preserves_an_occupied_trash_destination ... ok
test tests::delta_review::delta_independent_same_id_create_retries_joined_must_not_panic ... ok
test tests::appends_review::fuzz_deletes_restarts_parked ... ok
test tests::delta_review::placement_review_bulk_create_cannot_adopt_an_outside_file ... ok
test tests::delta_review::placement_review_bulk_create_retry_keeps_original_version_for_undo ... ok
test tests::delta_review::placement_review_planned_rename_conflict_keeps_links_unchanged ... ok
test tests::delta_review::placement_review_rename_retargets_links_to_the_actual_suffix ... ok
test tests::delta_review::placement_review_undo_rename_conflict_keeps_links_at_the_live_note ... ok
test tests::delta_review::rename_uses_a_suffix_for_an_unindexed_destination ... ok
test tests::delta_review::same_id_sibling_creates_with_different_text_conflict ... ok
test tests::event_visibility::a_failed_list_commit_cannot_announce_a_pin ... ok
test tests::event_visibility::a_scan_cannot_replace_an_announced_live_pin_with_the_old_file ... ok
test tests::delta_review::delta_permanent_deletion_history_failure_must_terminate_scan ... ok
test tests::event_visibility::create ... ok
test tests::event_visibility::create_text ... ok
test tests::event_visibility::delete ... ok
test tests::event_visibility::edit ... ok
test tests::event_visibility::edit_title ... ok
test tests::event_visibility::edit_title_property ... ok
test tests::event_visibility::move_note ... ok
test tests::event_visibility::failed_delete_then_restore_announces_the_current_state ... ok
test room::save::tests::review::group_commit::lanes::a_failing_note_does_not_starve_another_typist ... ok
test tests::event_visibility::outside_create ... ok
test tests::event_visibility::outside_delete ... ok
test tests::event_visibility::outside_edit ... ok
test tests::event_visibility::outside_edit_closed ... ok
test tests::event_visibility::outside_rename ... ok
test tests::event_visibility::regression_backup_discovery_cannot_reuse_a_forgotten_id ... ok
test tests::event_visibility::outside_rename_closed ... ok
test tests::event_visibility::regression_create_retry_after_restart_uses_file_without_intent ... ok
test tests::event_visibility::regression_create_retry_conflicts_with_different_file_text ... ok
test tests::event_visibility::regression_create_retry_with_crlf_and_bom_keeps_bytes ... ok
test tests::event_visibility::regression_create_retry_normalizes_server_keys_consistently ... ok
test tests::event_visibility::regression_create_with_text_writes_only_managed_frontmatter ... ok
test tests::event_visibility::regression_delayed_depart_cannot_clear_gone ... ok
test tests::event_visibility::regression_create_with_text_still_renames_after_its_h1 ... ok
test tests::event_visibility::regression_failed_create_cannot_resurrect_forgotten_id ... ok
test tests::event_visibility::regression_failed_initial_file_write_can_retry ... ok
test tests::event_visibility::regression_failed_save_hint_still_schedules_title_rename ... ok
test tests::event_visibility::regression_failed_unsaved_edit_restart_reconciles_from_journal ... ok
test tests::event_visibility::regression_forgotten_id_stays_gone_after_path_reuse_and_restart ... ok
test tests::event_visibility::regression_initial_file_precedes_visible_identity ... ok
test room::save::tests::review::review_fuzz_old_new_bytes_history_versions_and_restarts ... ok
test tests::event_visibility::regression_kill_after_outside_commit_repairs_list_on_start ... ok
test tests::event_visibility::regression_outside_commit_child ... ok
test tests::event_visibility::regression_purge_commits_path_state_before_unlink_or_event ... ok
test tests::event_visibility::pin ... ok
test tests::event_visibility::rename_public_retry ... ok
test tests::event_visibility::rename_retry ... ok
test tests::event_visibility::rename ... ok
test tests::event_visibility::restore_retry_repairs_a_missing_list_row_for_an_open_room ... ok
test tests::event_visibility::review_create_retry_preserves_initial_text_explicit_id ... ok
test tests::event_visibility::review_create_retry_preserves_initial_text_key_id ... ok
test tests::event_visibility::review_create_retry_without_key_preserves_initial_text_once ... ok
test tests::event_visibility::review_discovery_publication_retries_after_metadata_failure ... ok
test tests::event_visibility::review_load_event_recovers_after_meta_failure ... ok
test tests::event_visibility::review_restore_event_recovers_after_meta_failure ... ok
test tests::event_visibility::review_restore_publication_survives_home_restart ... ok
test tests::event_visibility::round4_create_retry_does_not_wait_for_scan_under_lifecycle ... ok
test tests::event_visibility::round4_daily_create_retry_does_not_reenter_lifecycle ... ok
test tests::event_visibility::regression_delete_failure_then_forget_keeps_gone ... ok
test tests::event_visibility::restore ... ok
test tests::event_visibility::regression_one_reconcile_path_after_failed_edit ... ok
test tests::event_visibility::round4_startup_retries_failed_list_stamp_read ... ok
test tests::event_visibility::round4_startup_retries_journal_discovery_before_file_rows ... ok
test tests::event_visibility::save_background_retry ... ok
test tests::event_visibility::save ... ok
test tests::event_visibility::save_retry ... ok
test tests::event_visibility::saved_list_fields_keep_file_date_fallback_current ... ok
test tests::event_visibility::saved_list_fields_rebuild_after_eviction_and_follow_later_edits ... ok
test tests::event_visibility::saved_rows_keep_file_stamps_for_warm_scans ... ok
test tests::event_visibility::saved_stamp_describes_our_write_before_a_later_outside_write ... ok
test tests::event_visibility::round4_unreadable_note_does_not_block_healthy_repair_or_ack ... ok
test tests::event_visibility::startup_scan_events_are_listed_before_the_scan_finishes ... ok
test tests::event_visibility::unread_external_bytes_do_not_get_a_clean_stamp ... ok
test tests::fanout::a_crash_before_the_seed_is_durable_never_doubles_text ... ok
test tests::fanout::a_crash_between_fan_out_and_disk_loses_nothing ... ok
test tests::event_visibility::unpin ... ok
test tests::fanout::a_version_always_matches_its_text ... ok
test tests::fanout::a_first_open_does_not_wait_for_the_disk ... ok
test tests::fanout::bursts_converge_and_reach_history ... ok
test tests::fresh::a_note_made_with_text_opens_with_its_frontmatter ... ok
test tests::fanout::collaborators_see_typing_before_the_disk ... ok
test tests::held::a_lost_identity_whose_path_was_taken_uses_the_plugins_naming_order ... ok
test tests::held::a_synced_first_file_with_a_lost_index_keeps_its_original_path ... ok
test tests::held::a_held_note_answers_before_its_file_and_writes_it_after ... ok
test tests::held::identity_without_history_is_dropped_on_the_next_start ... ok
test tests::kill9::child ... ok
test tests::kill9::delete_killed_after_its_answer_finishes_once ... ok
test tests::kill9::permanent_delete_after_restore_cannot_delete_the_live_note ... ok
test tests::kill9::quick_delete_restore_survives_kill ... ok
test tests::kill9::quick_restore_delete_survives_kill ... ok
test tests::kill9::restore_delete_forget_does_not_resurrect_after_kill ... ok
test tests::kill9::restore_killed_after_its_answer_finishes_once ... ok
test tests::held::history_without_identity_comes_back_on_the_next_start ... ok
test tests::listing::a_common_tag_pages_the_same_in_every_order ... ok
test tests::listing::filters_by_tag_kind_and_created_range ... ok
test tests::listing::pages_cover_every_note_once_in_a_stable_order ... ok
test tests::listing::pinning_shows_in_the_list_and_unpinning_leaves_no_trace ... ok
test tests::listing::the_first_page_never_waits_for_the_home_to_open ... ok
test tests::listing::the_kept_count_follows_adds_and_deletes ... ok
test tests::listing::the_list_stays_live_with_new_notes_saves_and_outside_edits ... ok
test tests::missing::a_move_outside_is_found_and_relink_repoints_the_links ... ok
test tests::missing::a_path_tells_here_trash_and_gone ... ok
test tests::missing::a_rename_in_the_app_leaves_the_old_path_moved ... ok
test tests::missing::make_from_link_makes_the_note_where_the_link_points_and_undo_takes_it_back ... ok
test tests::missing::never_made_targets_are_offered_with_their_capitals_and_link_counts ... ok
test tests::missing::never_written_paths_are_new_and_bad_ones_too ... ok
test tests::missing::notes_in_the_trash_from_before_are_found ... ok
test tests::missing::restored_with_a_new_name_reads_as_moved ... ok
test tests::opening::a_cold_fill_ends_with_every_index_and_right_answers ... ok
test tests::opening::a_cold_home_indexes_every_file_once_with_its_own_id ... ok
test tests::opening::a_note_never_typed_in_is_still_forgotten_on_restart ... ok
test tests::opening::a_warm_open_announces_only_what_changed_while_closed ... ok
test tests::event_visibility::round4_recorder_outage_bounds_deleted_ids_and_drains_overflow ... ok
test tests::opening::identifying_an_already_indexed_file_never_makes_it_a_copy ... ok
test tests::opening::shutting_down_leaves_the_list_log_empty ... ok
test tests::opening::asking_mid_scan_never_says_not_found_and_never_duplicates_a_day ... ok
test tests::opening::upgrading_without_a_saved_scan_announces_nothing_for_known_notes ... ok
test tests::outside::copied_note_gets_a_fresh_id ... ok
test tests::outside::edit_while_closed_is_merged_on_open ... ok
test tests::outside::missed_watcher_event_is_caught_before_saving ... ok
test tests::outside::outside_create_and_delete ... ok
test tests::outside::outside_edit_while_typing_merges ... ok
test tests::listing::an_idle_home_with_one_thousand_notes_does_not_reconcile ... ok
test tests::outside::outside_rename_keeps_the_id ... ok
test tests::outside::own_saves_are_not_outside_edits ... ok
test tests::opening::typing_saved_only_in_history_survives_a_restart_before_the_first_save ... ok
test tests::peek::reads_files_without_opening_rooms ... ok
test tests::peek::an_open_room_answers_with_its_live_text ... ok
test tests::pending::apply_places_changes_in_any_order ... ok
test tests::peek::returns_at_most_fifty ... ok
test tests::pending::yrs_alone_loses_a_parked_change ... ok
test tests::pending::changes_out_of_order_all_arrive_and_saved_is_true ... ok
test tests::renames::a_format_note_is_never_renamed_after_its_title ... ok
test tests::renames::a_taken_name_gets_a_number_and_daily_notes_keep_theirs ... ok
test tests::outside::polling_finds_outside_changes ... ok
test tests::renames::a_title_ending_in_a_number_does_not_schedule_a_rename ... ok
test tests::renames::backlinks_list_linked_and_unlinked_mentions ... ok
test tests::renames::cancelled_prepared_import_drops_its_private_image_and_replays_the_plan ... ok
test tests::renames::delta2_rename_collision_must_not_apply_dependent_title_edit ... ok
test tests::renames::make_note_moves_the_block_and_undoes_as_one_step ... ok
test tests::renames::move_block_to_another_note_and_back ... ok
test tests::renames::rename_killed_after_title_before_progress_recovers_and_undoes ... ok
test tests::renames::rename_killed_between_move_and_title_recovers_and_undoes ... ok
test tests::renames::rename_moves_the_file_and_repoints_every_link ... ok
test tests::renames::rename_recovery_child ... ok
test tests::renames::saving_a_title_ending_in_a_number_does_not_schedule_a_rename ... ok
test tests::renames::backlinks_follow_edits_and_deletes ... ok
test tests::renames::typing_in_a_linking_note_during_a_rename_is_kept ... ok
test tests::renames::undo_keeps_a_made_note_someone_typed_in ... ok
test tests::rooms::fresh_note_opened_by_many_at_once_is_not_doubled ... ok
test tests::rooms::late_joiner_gets_full_state ... ok
test tests::rooms::patches_use_utf16_positions ... ok
test tests::renames::typing_a_new_title_renames_the_file_after_a_pause ... ok
test tests::rooms::retried_change_applies_once ... ok
test tests::rooms::retried_create_makes_one_note ... ok
test tests::rooms::stale_replace_keeps_newer_typing ... ok
test tests::rooms::typing_survives_a_concurrent_delete ... ok
test tests::round4_review::create_reports_conflict_when_an_outside_file_arrives_before_placement ... ok
test tests::round4_review::independent_creates_joined_in_one_task_do_not_reenter ... ok
test tests::round4_review::scan_propagates_deletion_history_failure_after_reacquiring_lifecycle ... ok
test tests::round4_review::scan_propagates_deletion_history_read_failure_and_retries ... ok
test tests::rooms::random_concurrent_editing_converges_without_duplicates ... ok
test tests::saving::a_write_error_keeps_the_change ... ok
test tests::round4_review::startup_keeps_unknown_notes_incomplete_until_deletion_history_retry ... ok
test tests::saving::an_error_after_the_write_does_not_double_text ... ok
test tests::saving::crash_after_write_does_not_double_text ... ok
test tests::saving::disk_seed_keeps_current_fields_and_repairs_an_edit_with_preserved_timestamps ... ok
test tests::saving::failed_save_keeps_the_change ... ok
test tests::saving::crash_before_write_loses_nothing ... ok
test tests::saving::first_property_edit_and_disk_seed_share_one_durable_transaction ... ok
test tests::saving::first_property_noop_returns_the_durable_seed_version ... ok
test tests::saving::line_endings_and_bom_are_kept ... ok
test tests::saving::first_keystroke_creates_the_file ... ok
test tests::saving::opening_never_writes ... ok
test tests::saving::properties_continue_during_file_io ... ok
test tests::saving::saving_does_not_loop ... ok
test tests::saving::title_and_h1_stay_in_step ... ok
test tests::saving::typing_and_history_continue_during_file_io ... ok
test tests::renames::a_crash_mid_rename_resumes_and_applies_each_edit_once ... ok
test tests::saving::nonstop_typing_still_saves ... ok
test tests::shutdown::a_shutdown_wait_made_after_shutdown_ends_at_once ... ok
test tests::shutdown::healthy_shutdown_settles_pending_typing_before_saving ... ok
test tests::shutdown::no_background_work_starts_after_shutdown ... ok
test tests::shutdown::nothing_opens_or_writes_on_a_home_after_shutdown ... ok
test tests::shutdown::scan_waiters_stay_released_once_shutdown_releases_them ... ok
test tests::shutdown::settlement::shutdown_settlement_failed_promotion_preserves_written_snapshot ... ok
test tests::shutdown::settlement::shutdown_settlement_late_disk_recovery_requires_replay ... ok
test tests::shutdown::settlement::shutdown_settlement_live_file_io_failure_joins_writer ... ok
test tests::shutdown::a_create_that_outlives_shutdown_writes_nothing ... ok
test tests::shutdown::shutdown_cancels_a_reconciler_waiting_for_startup_scan ... ok
test tests::shutdown::shutdown_closes_the_home_history_writer_before_returning ... ok
test tests::shutdown::shutdown_finishes_when_history_writes_keep_failing ... ok
test tests::shutdown::a_create_running_at_shutdown_finishes_before_shutdown_returns ... ok
test tests::shutdown::shutdown_many_full_history_rooms_12 ... ok
test tests::shutdown::shutdown_many_full_history_rooms_100 ... ok
test tests::storm::outside_rewrites_during_a_storm_all_land ... ok
test tests::tags::a_big_tag_rename_allows_typing_while_a_batch_is_held ... ok
test tests::tags::bad_names_are_refused ... ok
test tests::tags::perf_big_tag_rename_keystrokes_under_one_second ... ignored, tag-rename typing latency runs on the perf VM via perf/ordinary-latency-vm.sh
test tests::tags::renames_every_tag_and_undoes_as_one_step ... ok
test tests::tags::typing_during_a_tag_rename_is_kept ... ok
test tests::trash::a_closed_note_is_trashed_without_opening_it ... ok
test tests::trash::a_crash_mid_delete_finishes_on_restart_exactly_once ... ok
test tests::trash::a_file_deleted_outside_goes_to_the_trash ... ok
test tests::trash::a_never_typed_note_is_simply_forgotten ... ok
test tests::trash::a_note_deleted_before_its_first_save_keeps_its_text ... ok
test tests::trash::delete_and_restore_answer_once_per_job_id ... ok
test tests::trash::delete_moves_to_trash_and_undo_brings_it_back ... ok
test tests::trash::delete_replay_with_a_stale_index_keeps_the_only_file ... ok
test tests::trash::delete_waits_for_imported_incoming_links_before_remembering_their_identity ... ok
test tests::trash::folder_rename_and_outside_move_bursts_keep_every_descendant ... ok
test tests::trash::forget_deletes_file_and_history_forever ... ok
test tests::trash::half_written_trash_folders_never_hide_a_live_note ... ok
test tests::trash::outside_copy_finishes_a_metadata_only_interruption ... ok
test tests::trash::restore_durably_indexes_a_note_without_an_embedded_id ... ok
test tests::trash::restore_keeps_id_and_history_and_takes_a_free_name ... ok
test tests::trash::restore_with_a_stale_index_really_moves_the_file_back ... ok
test tests::trash::the_sweep_empties_only_notes_older_than_thirty_days ... ok
test tests::trash::trash_ids_never_reach_another_home ... ok
test tests::trash::trash_pages_newest_first ... ok
test tests::trash::trashed_notes_leave_search_lists_and_backlinks_and_come_back ... ok
test tests::unloading::a_connected_client_keeps_it ... ok
test tests::tags::a_crash_mid_rename_resumes_and_renames_each_tag_once ... ok
test tests::unloading::an_unused_home_unloads_and_answers_after ... ok
test tests::unloading::an_open_note_keeps_it ... ok
test tests::writers::every_writer_at_once_with_the_watcher ... ok
test text::tests::mixed_endings_take_the_majority ... ok
test text::tests::styles_round_trip ... ok
test text::tests::uniform_files_round_trip_exactly ... ok
test trash::tests::a_note_without_details_still_reads ... ok
test trash::tests::candidates_include_notes_and_orphan_details_with_a_bounded_scan ... ok
test trash::tests::details_without_a_note_are_not_a_note ... ok
test trash::tests::missing_details_never_age_trash_from_the_notes_old_mtime ... ok
test trash::tests::outside_copy_has_its_details_when_the_file_first_becomes_readable ... ok
test versions::tests::folds_runs_by_author_kind_and_gap ... ok
test watch::native_tests::bulk_files_only_notify_the_watcher_when_the_whole_note_is_placed ... ok
test watch::native_tests::native_watch_ignores_reads_but_keeps_every_kind_of_outside_change ... ok
test ydoc::seed_tests::initial_seed_matches_yrs_and_accepts_later_utf16_edits ... ok
test ydoc::tests::fork_and_merge_keeps_concurrent_typing ... ok
test ydoc::tests::reapplying_an_update_changes_nothing ... ok
test ydoc::tests::utf16_offsets ... ok
test tests::writers::every_writer_at_once_loses_and_doubles_nothing ... ok
test tests::event_visibility::save_outside_retry ... ok
test tests::shutdown::settlement::shutdown_settlement_state_machine ... ok

test result: ok. 455 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 42.47s

     Running unittests src/main.rs (target/debug/deps/calternal_perf-ccda2fa50fa2d7c5)

running 7 tests
test args::tests::parses_trash_only_mode ... ok
test scenarios::soak::tests::slope_of_a_line ... ok
test scenarios::storm::tests::typing_stops_before_the_newline_ahead_of_outside_lines ... ok
test stats::tests::medians_of_runs_and_pooled_singles ... ok
test stats::tests::summary_max_is_the_largest_observed_sample_across_runs ... ok
test live::tests::frames_round_trip_and_keystrokes_stay_whole ... ok
test scenarios::trash::tests::permanent_deletion_never_removes_a_later_runs_live_note ... ok

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

     Running unittests src/bin/storage-bench.rs (target/debug/deps/storage_bench-4f4305241ae7990c)

running 0 tests

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

     Running unittests src/bin/tasks-bench.rs (target/debug/deps/tasks_bench-8313ffc5153bf696)

running 2 tests
test cold::tests::even_median_uses_both_middle_samples ... ok
test cold::tests::median_keeps_real_growth_despite_a_storage_stall ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_plugin_hello-53ca8ca6107399a0)

running 0 tests

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

     Running unittests src/lib.rs (target/debug/deps/calternal_prefs-069abfa4287cc385)

running 9 tests
test tests::a_change_on_one_device_reaches_the_other ... ok
test tests::keys_are_an_area_then_dotted_parts ... ok
test tests::bad_keys_and_big_values_get_friendly_errors ... ok
test tests::a_retry_with_the_same_key_acts_once ... ok
test tests::people_do_not_share_preferences ... ok
test tests::saving_the_same_value_again_is_quiet ... ok
test tests::quick_saves_from_two_devices_all_land ... ok
test tests::set_then_get_and_survive_a_restart ... ok
test tests::at_most_200_keys_but_existing_ones_can_still_change ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_search-ff67ffa340bd9f12)

running 13 tests
test fuzzy::tests::distance_counts_swaps_as_one ... ok
test query::tests::lone_symbols_are_ignored ... ok
test query::tests::dates_cover_whole_periods ... ok
test read::tests::block_ids_are_found ... ok
test query::tests::words_filters_and_phrases ... ok
test fuzzy::tests::common_typos_are_fixed ... ok
test read::tests::renumbering_shifts_placeholders ... ok
test text::tests::bigrams_cover_unspaced_scripts ... ok
test read::tests::text_matches_like_the_index ... ok
test text::tests::fold_drops_accents_and_case ... ok
test read::tests::excerpts_mark_matches_in_context ... ok
test text::tests::words_keep_indic_vowel_signs ... ok
test schema::tests::an_older_index_gets_its_titles_filled ... ok

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

     Running tests/search.rs (target/debug/deps/search-8eb084de93ee7287)

running 13 tests
test an_empty_search_shows_recent_things ... ok
test every_script_is_searchable ... ok
test behind_answers_at_once_and_catching_up_is_announced_once ... ok
test a_restart_heals_whatever_was_missed ... ok
test perf_search_answer_under_five_hundred_ms ... ignored, first-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test filters_by_tag_kind_and_date ... ok
test odd_input_never_breaks_search ... ok
test searches_answer_while_indexing_runs ... ok
test prefixes_and_typos_are_forgiven ... ok
test results_show_why_they_matched_and_where ... ok
test people_only_ever_find_their_own_things ... ok
test titles_first_then_recent_use_then_body ... ok
test the_index_follows_changes_live ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_server-6fec464ffce1c8cf)

running 12 tests
test live::tests::room_join_metadata_has_explicit_byte_bounds ... ok
test rooms::tests::a_message_in_numbered_pieces_arrives_whole ... ok
test rooms::tests::assembly_is_bounded_per_connection_and_globally_and_expiry_releases_it ... ok
test rooms::tests::backpressure_refuses_the_room_before_later_checks ... ok
test rooms::tests::duplicated_missing_and_inconsistent_chunks_never_deliver ... ok
test rooms::tests::frames_round_trip ... ok
test rooms::tests::malformed_chunk_headers_never_allow_later_checks ... ok
test rooms::tests::old_membership_packets_and_results_cannot_reach_a_rejoined_room ... ok
test compress::tests::big_answers_are_compressed_and_small_ones_are_not ... ok
test rooms::tests::pending_and_joined_memberships_share_one_connection_count_bound ... ok
test rooms::tests::wire_nonces_reject_old_frames_joins_and_leaves_without_tombstones ... ok
test rooms::tests::exact_size_limit_is_delivered_but_a_larger_declaration_is_refused ... ok


Full workspace tests at head 30f65caf: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed on the first run; no #757 rerun was needed. Output verbatim, part 3/4: ```text test links::tests::retarget_follows_the_title_and_keeps_custom_text ... ok test links::tests::retarget_from_a_subfolder ... ok test links::tests::retarget_matches_case_and_unicode_forms ... ok test links::tests::skips_code_images_and_the_web ... ok test links::tests::tilde_fence_does_not_close_on_trailing_text ... ok test links::tests::unclosed_fence_hides_links_through_eof ... ok test meta::descriptions::tests::a_failed_fresh_plugin_batch_rolls_back_its_note_rows_too ... ok test index::tests::directory_counts_match_full_scan_after_moves_and_reload ... ok test meta::fields::tests::cache_upgrade_resets_counts_and_link_rows_and_keeps_note_keys_stable ... ok test meta::fields::tests::stamp_only_changes_keep_sort_fields_and_tags_but_refresh_links ... ok test meta::scan::tests::a_prepared_scan_cannot_replace_a_later_announced_live_pin ... ok test meta::scan::tests::an_identity_returning_after_selection_keeps_its_list_row ... ok test index::tests::answers_like_plain_maps ... ok test meta::tests::cursors_round_trip_and_reject_junk ... ok test meta::tests::fresh_fill_restores_checkpointing_after_success_and_failure ... ok test meta::scan::tests::stamp_walk_preserves_sparse_and_extreme_keys ... ok test missing::targets::tests::a_name_is_the_file_without_its_folder_and_extension ... ok test meta::tests::snippets_skip_frontmatter_and_headings ... ok test missing::targets::tests::names_rank_exact_then_prefix_then_word_then_inside ... ok test naming::tests::what_fits_and_what_to_try ... ok test props::tests::already_typed_text_lists_keep_their_comments_and_quotes ... ok test props::tests::adds_removes_and_quotes_links ... ok test props::tests::changes_only_the_touched_key ... ok test props::tests::list_items_are_written_as_text_too ... ok test props::tests::obsidian_written_yaml_reads ... ok test props::tests::outside_keys_win_whole_and_unrelated_pending_keys_survive ... ok test props::tests::quoting_round_trips_tricky_text ... ok test props::tests::reads_every_list_form ... ok test props::tests::refuses_what_it_cannot_read ... ok test props::tests::review_malformed_unrelated_property_blocks_writes ... ok test props::tests::review_property_case_override_is_honored ... ok test props::tests::review_text_yaml_types ... ok test props::tests::scalar_writes_preserve_types_in_both_directions ... ok test props::tests::selected_display_keys_keep_unrelated_errors_and_source_order ... ok test props::tests::simple_display_large_numeric_scalars_agree_with_yaml ... ok test props::tests::simple_display_mapping_is_a_subset_of_valid_yaml ... ok test props::tests::simple_display_mapping_keeps_full_validation_for_other_yaml ... ok test meta::descriptions::tests::common_tag_totals_keep_plugin_visibility_filters_and_cursor_scope ... ok test props::tests::simple_display_scalars_agree_with_the_yaml_validator ... ok test rename::tests::clash_numbers ... ok test rename::tests::daily_names ... ok test rename::tests::h1_is_set_or_added ... ok test room::acks::tests::varuints_round_trip ... ok test props::tests::unicode_display_scalars_agree_with_yaml ... ok test room::actor::retry_tests::malformed_update_remains_a_permanent_refusal ... ok test room::edit::tests::checks_bounds_overlap_and_surrogates ... ok test room::pipeline::memory_tests::actor_api_payload_remains_byte_bounded_when_deferred ... ok test room::actor::retry_tests::retry_budget_failure_requests_rejoin_without_permanent_refusal ... ok test room::pipeline::memory_tests::global_retry_bytes_refuse_before_mutation_and_release_after_commit ... ok test room::pipeline::memory_tests::parked_cross_writer_input_is_journaled_before_its_dependency_releases_it ... ok test room::pipeline::memory_tests::server_and_outside_updates_are_admitted_before_live_mutation ... ok test room::pipeline::memory_tests::per_room_retry_bytes_apply_backpressure_before_another_update ... ok test room::save::tests::concurrent_typists_and_saves_converge ... ok test room::save::tests::kill_nine_mid_save_recovers_title_and_bytes ... ok test room::save::tests::review::failed_history_outside_edit_cannot_be_acknowledged_before_recovery ... ok test room::save::tests::review::failed_history_server_edit_cannot_be_acknowledged_before_recovery ... ok test room::save::tests::review::group_commit::a_parked_step_two_does_not_answer_save_checks ... ok test room::save::tests::review::group_commit::a_peer_joining_mid_retry_and_typing_is_saved_once_durable ... ok test room::save::tests::review::group_commit::a_retried_api_edit_sends_its_changed_event ... ok test room::save::tests::review::group_commit::an_incomplete_step_two_cannot_release_held_save_checks ... ok test room::save::tests::review::group_commit::edits_typed_during_a_write_commit_together ... ok test room::save::tests::review::group_commit::a_failed_write_is_never_overtaken ... ok test room::save::tests::review::group_commit::lanes::checks_after_each_edit_stay_bounded_per_connection ... ok test room::save::tests::review::group_commit::lanes::doomed_lanes_do_not_roll_back_others ... ok test room::save::tests::review::group_commit::lanes::mid_batch_failure_with_other_note_typing ... ok test room::save::tests::review::group_commit::mixed_paths_keep_applied_order_through_retry ... ok test room::save::tests::review::group_commit::perf_save_checks_under_twenty_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test links::tests::code_block_spans_match_pulldown_on_random_markdown ... ok test room::save::tests::review::group_commit::saved_arrives_after_storage_recovers_without_new_activity ... ok test room::save::tests::review::group_commit::two_notes_keep_their_own_order ... ok test room::save::tests::review::group_commit::save_checks_during_an_outage_stay_bounded ... ok test room::save::tests::review::history_durability::independent_652_failed_first_typed_edit_must_precede_second ... ok test room::save::tests::review::history_durability::independent_652_disk_full_mid_burst_then_recovery ... ok test room::save::tests::review::history_durability::independent_652_queued_api_requires_replay_after_kill9 ... ok test room::save::tests::review::history_durability::independent_652_queued_crash_child ... ok test room::save::tests::review::history_durability::independent_652_real_syncclient_joining_snapshot_is_not_saved ... ok test room::save::tests::review::history_durability::independent_652_outage_queue_and_save_checks ... ok test room::save::tests::review::history_durability::metadata_refresh_does_not_block_sync_behind_an_uncommitted_seed ... ok test room::save::tests::review::history_durability::perf_outage_checks_under_two_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test room::save::tests::review::history_durability::retained_failed_edits_keep_the_file_and_list_cache_dirty ... ok test room::save::tests::review::review_acknowledged_save_child ... ok test room::save::tests::review::history_durability::independent_652_real_syncclient_peers_and_restart_replay ... ok test room::save::tests::review::review_delete_set_before_insert_and_trailing_format_marks ... ok test room::save::tests::review::review_failed_save_retry_and_outside_retry_keep_base_cache ... ok test room::save::tests::review::review_kill_nine_after_save_reply_preserves_exact_file_history_and_version ... ok test props::tests::only_intended_keys_change ... ok test room::save::tests::review::slow_disk::slow_disk_long ... ignored, measurement for the perf VM, not a gate test room::save::tests::review::slow_disk::slow_disk_matrix ... ignored, measurement for the perf VM, not a gate test room::save::tests::save_kill_child ... ok test room::save::tests::saved_bytes_and_titles_match_the_old_copy_path ... ok test room::save::tests::title_sync_does_not_decode_the_saved_document ... ok test scan::classify::tests::folded_aliases_are_changed_without_becoming_vanished ... ok test scan::state::alias_test::a_cache_alias_is_replaced_without_appending_to_its_target ... ok test scan::state::tests::a_torn_tail_is_ignored_then_removed_before_append ... ok test scan::state::tests::appended_edits_deletions_and_compaction_keep_the_snapshot ... ok test scan::tests::day_ids_name_their_files ... ok test scan::tests::state_round_trips_and_skips_odd_names ... ok test scan::tests::unchanged_scan_keeps_state_file_and_changed_scan_appends ... ok test search::tests::a_note_becomes_a_document ... ok test search::tests::plain_search_lines_borrow_their_text ... ok test search::tests::search_lines_keep_link_text_and_replacement_order ... ok test search::tests::titles_fall_back_to_the_file_name ... ok test smartline::tests::a_plain_line ... ok test smartline::tests::only_tags_are_words ... ok test smartline::tests::trailing_tags_only ... ok test stamp::tests::formats_with_offset ... ok test storage_crash::kill9_after_ack_during_split_hdd_save_recovers_exact_text ... ok test storage_crash::storage_child ... ok test tags::front::tests::every_way_of_writing_tags ... ok test tags::merge::tests::property_tags_go_with_their_comma_or_line ... ok test tags::merge::tests::text_tags_go_with_one_space ... ok test tags::rewrite::tests::merging_keeps_every_tag_once_at_most ... ok test tags::rewrite::tests::nothing_to_do_is_no_edits ... ok test tags::rewrite::tests::only_real_tags_change ... ok test tags::rewrite::tests::positions_count_utf16 ... ok test tags::rewrite::tests::properties_change_name_only ... ok test tags::rewrite::tests::rename_and_back_is_the_same_text ... ok test tags::rewrite::tests::renames_tags_and_nested_tags_only ... ok test tags::rewrite::tests::renaming_onto_an_existing_tag_merges ... ok test tags::rewrite::tests::words_code_links_and_headings ... ok test tags::scan::tests::code_is_never_tags ... ok test tags::scan::tests::hash_free_lines_still_open_and_close_code_fences ... ok test tags::scan::tests::headings_and_quotes_keep_their_tags ... ok test tags::scan::tests::link_targets_and_addresses_are_never_tags ... ok test tags::scan::tests::not_tags ... ok test tags::scan::tests::plain_tags ... ok test tags::tests::nesting_and_cleaning ... ok test tags::tests::properties_and_text ... ok test tests::acks::an_older_lineage_is_refused_before_anything_is_sent ... ok test tests::acks::checks_advance_in_order_and_cover_every_earlier_edit ... ok test tests::acks::lineage_survives_a_restart ... ok test tests::acks::saved_means_the_change_is_in_history ... ok test tests::anchors::an_anchor_follows_its_block_when_lines_shift ... ok test tests::anchors::an_edited_block_is_refused_never_the_wrong_one ... ok test tests::anchors::anchors_need_a_hash_and_block_ids_work ... ok test tests::anchors::history_folds_typing_and_names_jobs ... ok test tests::anchors::shifting_lines_never_move_the_wrong_block ... ok test room::save::tests::review::review_title_precedence_edge_matrix ... ok test tests::appends::an_append_to_a_long_note_stays_small ... ok test tests::appends::appends_built_directly_match_the_copy_byte_for_byte ... ok test tests::appends_review::delete_whole_tail_then_append_matches ... ok test tests::appends_review::frontmatter_map_write_falls_back ... ok test tests::appends::typists_and_appends_interleave_on_one_note ... ok test tests::appends_review::trailing_format_marker_bytes ... ok test tests::delta_review::deleting_preserves_an_occupied_trash_destination ... ok test tests::delta_review::delta_independent_same_id_create_retries_joined_must_not_panic ... ok test tests::appends_review::fuzz_deletes_restarts_parked ... ok test tests::delta_review::placement_review_bulk_create_cannot_adopt_an_outside_file ... ok test tests::delta_review::placement_review_bulk_create_retry_keeps_original_version_for_undo ... ok test tests::delta_review::placement_review_planned_rename_conflict_keeps_links_unchanged ... ok test tests::delta_review::placement_review_rename_retargets_links_to_the_actual_suffix ... ok test tests::delta_review::placement_review_undo_rename_conflict_keeps_links_at_the_live_note ... ok test tests::delta_review::rename_uses_a_suffix_for_an_unindexed_destination ... ok test tests::delta_review::same_id_sibling_creates_with_different_text_conflict ... ok test tests::event_visibility::a_failed_list_commit_cannot_announce_a_pin ... ok test tests::event_visibility::a_scan_cannot_replace_an_announced_live_pin_with_the_old_file ... ok test tests::delta_review::delta_permanent_deletion_history_failure_must_terminate_scan ... ok test tests::event_visibility::create ... ok test tests::event_visibility::create_text ... ok test tests::event_visibility::delete ... ok test tests::event_visibility::edit ... ok test tests::event_visibility::edit_title ... ok test tests::event_visibility::edit_title_property ... ok test tests::event_visibility::move_note ... ok test tests::event_visibility::failed_delete_then_restore_announces_the_current_state ... ok test room::save::tests::review::group_commit::lanes::a_failing_note_does_not_starve_another_typist ... ok test tests::event_visibility::outside_create ... ok test tests::event_visibility::outside_delete ... ok test tests::event_visibility::outside_edit ... ok test tests::event_visibility::outside_edit_closed ... ok test tests::event_visibility::outside_rename ... ok test tests::event_visibility::regression_backup_discovery_cannot_reuse_a_forgotten_id ... ok test tests::event_visibility::outside_rename_closed ... ok test tests::event_visibility::regression_create_retry_after_restart_uses_file_without_intent ... ok test tests::event_visibility::regression_create_retry_conflicts_with_different_file_text ... ok test tests::event_visibility::regression_create_retry_with_crlf_and_bom_keeps_bytes ... ok test tests::event_visibility::regression_create_retry_normalizes_server_keys_consistently ... ok test tests::event_visibility::regression_create_with_text_writes_only_managed_frontmatter ... ok test tests::event_visibility::regression_delayed_depart_cannot_clear_gone ... ok test tests::event_visibility::regression_create_with_text_still_renames_after_its_h1 ... ok test tests::event_visibility::regression_failed_create_cannot_resurrect_forgotten_id ... ok test tests::event_visibility::regression_failed_initial_file_write_can_retry ... ok test tests::event_visibility::regression_failed_save_hint_still_schedules_title_rename ... ok test tests::event_visibility::regression_failed_unsaved_edit_restart_reconciles_from_journal ... ok test tests::event_visibility::regression_forgotten_id_stays_gone_after_path_reuse_and_restart ... ok test tests::event_visibility::regression_initial_file_precedes_visible_identity ... ok test room::save::tests::review::review_fuzz_old_new_bytes_history_versions_and_restarts ... ok test tests::event_visibility::regression_kill_after_outside_commit_repairs_list_on_start ... ok test tests::event_visibility::regression_outside_commit_child ... ok test tests::event_visibility::regression_purge_commits_path_state_before_unlink_or_event ... ok test tests::event_visibility::pin ... ok test tests::event_visibility::rename_public_retry ... ok test tests::event_visibility::rename_retry ... ok test tests::event_visibility::rename ... ok test tests::event_visibility::restore_retry_repairs_a_missing_list_row_for_an_open_room ... ok test tests::event_visibility::review_create_retry_preserves_initial_text_explicit_id ... ok test tests::event_visibility::review_create_retry_preserves_initial_text_key_id ... ok test tests::event_visibility::review_create_retry_without_key_preserves_initial_text_once ... ok test tests::event_visibility::review_discovery_publication_retries_after_metadata_failure ... ok test tests::event_visibility::review_load_event_recovers_after_meta_failure ... ok test tests::event_visibility::review_restore_event_recovers_after_meta_failure ... ok test tests::event_visibility::review_restore_publication_survives_home_restart ... ok test tests::event_visibility::round4_create_retry_does_not_wait_for_scan_under_lifecycle ... ok test tests::event_visibility::round4_daily_create_retry_does_not_reenter_lifecycle ... ok test tests::event_visibility::regression_delete_failure_then_forget_keeps_gone ... ok test tests::event_visibility::restore ... ok test tests::event_visibility::regression_one_reconcile_path_after_failed_edit ... ok test tests::event_visibility::round4_startup_retries_failed_list_stamp_read ... ok test tests::event_visibility::round4_startup_retries_journal_discovery_before_file_rows ... ok test tests::event_visibility::save_background_retry ... ok test tests::event_visibility::save ... ok test tests::event_visibility::save_retry ... ok test tests::event_visibility::saved_list_fields_keep_file_date_fallback_current ... ok test tests::event_visibility::saved_list_fields_rebuild_after_eviction_and_follow_later_edits ... ok test tests::event_visibility::saved_rows_keep_file_stamps_for_warm_scans ... ok test tests::event_visibility::saved_stamp_describes_our_write_before_a_later_outside_write ... ok test tests::event_visibility::round4_unreadable_note_does_not_block_healthy_repair_or_ack ... ok test tests::event_visibility::startup_scan_events_are_listed_before_the_scan_finishes ... ok test tests::event_visibility::unread_external_bytes_do_not_get_a_clean_stamp ... ok test tests::fanout::a_crash_before_the_seed_is_durable_never_doubles_text ... ok test tests::fanout::a_crash_between_fan_out_and_disk_loses_nothing ... ok test tests::event_visibility::unpin ... ok test tests::fanout::a_version_always_matches_its_text ... ok test tests::fanout::a_first_open_does_not_wait_for_the_disk ... ok test tests::fanout::bursts_converge_and_reach_history ... ok test tests::fresh::a_note_made_with_text_opens_with_its_frontmatter ... ok test tests::fanout::collaborators_see_typing_before_the_disk ... ok test tests::held::a_lost_identity_whose_path_was_taken_uses_the_plugins_naming_order ... ok test tests::held::a_synced_first_file_with_a_lost_index_keeps_its_original_path ... ok test tests::held::a_held_note_answers_before_its_file_and_writes_it_after ... ok test tests::held::identity_without_history_is_dropped_on_the_next_start ... ok test tests::kill9::child ... ok test tests::kill9::delete_killed_after_its_answer_finishes_once ... ok test tests::kill9::permanent_delete_after_restore_cannot_delete_the_live_note ... ok test tests::kill9::quick_delete_restore_survives_kill ... ok test tests::kill9::quick_restore_delete_survives_kill ... ok test tests::kill9::restore_delete_forget_does_not_resurrect_after_kill ... ok test tests::kill9::restore_killed_after_its_answer_finishes_once ... ok test tests::held::history_without_identity_comes_back_on_the_next_start ... ok test tests::listing::a_common_tag_pages_the_same_in_every_order ... ok test tests::listing::filters_by_tag_kind_and_created_range ... ok test tests::listing::pages_cover_every_note_once_in_a_stable_order ... ok test tests::listing::pinning_shows_in_the_list_and_unpinning_leaves_no_trace ... ok test tests::listing::the_first_page_never_waits_for_the_home_to_open ... ok test tests::listing::the_kept_count_follows_adds_and_deletes ... ok test tests::listing::the_list_stays_live_with_new_notes_saves_and_outside_edits ... ok test tests::missing::a_move_outside_is_found_and_relink_repoints_the_links ... ok test tests::missing::a_path_tells_here_trash_and_gone ... ok test tests::missing::a_rename_in_the_app_leaves_the_old_path_moved ... ok test tests::missing::make_from_link_makes_the_note_where_the_link_points_and_undo_takes_it_back ... ok test tests::missing::never_made_targets_are_offered_with_their_capitals_and_link_counts ... ok test tests::missing::never_written_paths_are_new_and_bad_ones_too ... ok test tests::missing::notes_in_the_trash_from_before_are_found ... ok test tests::missing::restored_with_a_new_name_reads_as_moved ... ok test tests::opening::a_cold_fill_ends_with_every_index_and_right_answers ... ok test tests::opening::a_cold_home_indexes_every_file_once_with_its_own_id ... ok test tests::opening::a_note_never_typed_in_is_still_forgotten_on_restart ... ok test tests::opening::a_warm_open_announces_only_what_changed_while_closed ... ok test tests::event_visibility::round4_recorder_outage_bounds_deleted_ids_and_drains_overflow ... ok test tests::opening::identifying_an_already_indexed_file_never_makes_it_a_copy ... ok test tests::opening::shutting_down_leaves_the_list_log_empty ... ok test tests::opening::asking_mid_scan_never_says_not_found_and_never_duplicates_a_day ... ok test tests::opening::upgrading_without_a_saved_scan_announces_nothing_for_known_notes ... ok test tests::outside::copied_note_gets_a_fresh_id ... ok test tests::outside::edit_while_closed_is_merged_on_open ... ok test tests::outside::missed_watcher_event_is_caught_before_saving ... ok test tests::outside::outside_create_and_delete ... ok test tests::outside::outside_edit_while_typing_merges ... ok test tests::listing::an_idle_home_with_one_thousand_notes_does_not_reconcile ... ok test tests::outside::outside_rename_keeps_the_id ... ok test tests::outside::own_saves_are_not_outside_edits ... ok test tests::opening::typing_saved_only_in_history_survives_a_restart_before_the_first_save ... ok test tests::peek::reads_files_without_opening_rooms ... ok test tests::peek::an_open_room_answers_with_its_live_text ... ok test tests::pending::apply_places_changes_in_any_order ... ok test tests::peek::returns_at_most_fifty ... ok test tests::pending::yrs_alone_loses_a_parked_change ... ok test tests::pending::changes_out_of_order_all_arrive_and_saved_is_true ... ok test tests::renames::a_format_note_is_never_renamed_after_its_title ... ok test tests::renames::a_taken_name_gets_a_number_and_daily_notes_keep_theirs ... ok test tests::outside::polling_finds_outside_changes ... ok test tests::renames::a_title_ending_in_a_number_does_not_schedule_a_rename ... ok test tests::renames::backlinks_list_linked_and_unlinked_mentions ... ok test tests::renames::cancelled_prepared_import_drops_its_private_image_and_replays_the_plan ... ok test tests::renames::delta2_rename_collision_must_not_apply_dependent_title_edit ... ok test tests::renames::make_note_moves_the_block_and_undoes_as_one_step ... ok test tests::renames::move_block_to_another_note_and_back ... ok test tests::renames::rename_killed_after_title_before_progress_recovers_and_undoes ... ok test tests::renames::rename_killed_between_move_and_title_recovers_and_undoes ... ok test tests::renames::rename_moves_the_file_and_repoints_every_link ... ok test tests::renames::rename_recovery_child ... ok test tests::renames::saving_a_title_ending_in_a_number_does_not_schedule_a_rename ... ok test tests::renames::backlinks_follow_edits_and_deletes ... ok test tests::renames::typing_in_a_linking_note_during_a_rename_is_kept ... ok test tests::renames::undo_keeps_a_made_note_someone_typed_in ... ok test tests::rooms::fresh_note_opened_by_many_at_once_is_not_doubled ... ok test tests::rooms::late_joiner_gets_full_state ... ok test tests::rooms::patches_use_utf16_positions ... ok test tests::renames::typing_a_new_title_renames_the_file_after_a_pause ... ok test tests::rooms::retried_change_applies_once ... ok test tests::rooms::retried_create_makes_one_note ... ok test tests::rooms::stale_replace_keeps_newer_typing ... ok test tests::rooms::typing_survives_a_concurrent_delete ... ok test tests::round4_review::create_reports_conflict_when_an_outside_file_arrives_before_placement ... ok test tests::round4_review::independent_creates_joined_in_one_task_do_not_reenter ... ok test tests::round4_review::scan_propagates_deletion_history_failure_after_reacquiring_lifecycle ... ok test tests::round4_review::scan_propagates_deletion_history_read_failure_and_retries ... ok test tests::rooms::random_concurrent_editing_converges_without_duplicates ... ok test tests::saving::a_write_error_keeps_the_change ... ok test tests::round4_review::startup_keeps_unknown_notes_incomplete_until_deletion_history_retry ... ok test tests::saving::an_error_after_the_write_does_not_double_text ... ok test tests::saving::crash_after_write_does_not_double_text ... ok test tests::saving::disk_seed_keeps_current_fields_and_repairs_an_edit_with_preserved_timestamps ... ok test tests::saving::failed_save_keeps_the_change ... ok test tests::saving::crash_before_write_loses_nothing ... ok test tests::saving::first_property_edit_and_disk_seed_share_one_durable_transaction ... ok test tests::saving::first_property_noop_returns_the_durable_seed_version ... ok test tests::saving::line_endings_and_bom_are_kept ... ok test tests::saving::first_keystroke_creates_the_file ... ok test tests::saving::opening_never_writes ... ok test tests::saving::properties_continue_during_file_io ... ok test tests::saving::saving_does_not_loop ... ok test tests::saving::title_and_h1_stay_in_step ... ok test tests::saving::typing_and_history_continue_during_file_io ... ok test tests::renames::a_crash_mid_rename_resumes_and_applies_each_edit_once ... ok test tests::saving::nonstop_typing_still_saves ... ok test tests::shutdown::a_shutdown_wait_made_after_shutdown_ends_at_once ... ok test tests::shutdown::healthy_shutdown_settles_pending_typing_before_saving ... ok test tests::shutdown::no_background_work_starts_after_shutdown ... ok test tests::shutdown::nothing_opens_or_writes_on_a_home_after_shutdown ... ok test tests::shutdown::scan_waiters_stay_released_once_shutdown_releases_them ... ok test tests::shutdown::settlement::shutdown_settlement_failed_promotion_preserves_written_snapshot ... ok test tests::shutdown::settlement::shutdown_settlement_late_disk_recovery_requires_replay ... ok test tests::shutdown::settlement::shutdown_settlement_live_file_io_failure_joins_writer ... ok test tests::shutdown::a_create_that_outlives_shutdown_writes_nothing ... ok test tests::shutdown::shutdown_cancels_a_reconciler_waiting_for_startup_scan ... ok test tests::shutdown::shutdown_closes_the_home_history_writer_before_returning ... ok test tests::shutdown::shutdown_finishes_when_history_writes_keep_failing ... ok test tests::shutdown::a_create_running_at_shutdown_finishes_before_shutdown_returns ... ok test tests::shutdown::shutdown_many_full_history_rooms_12 ... ok test tests::shutdown::shutdown_many_full_history_rooms_100 ... ok test tests::storm::outside_rewrites_during_a_storm_all_land ... ok test tests::tags::a_big_tag_rename_allows_typing_while_a_batch_is_held ... ok test tests::tags::bad_names_are_refused ... ok test tests::tags::perf_big_tag_rename_keystrokes_under_one_second ... ignored, tag-rename typing latency runs on the perf VM via perf/ordinary-latency-vm.sh test tests::tags::renames_every_tag_and_undoes_as_one_step ... ok test tests::tags::typing_during_a_tag_rename_is_kept ... ok test tests::trash::a_closed_note_is_trashed_without_opening_it ... ok test tests::trash::a_crash_mid_delete_finishes_on_restart_exactly_once ... ok test tests::trash::a_file_deleted_outside_goes_to_the_trash ... ok test tests::trash::a_never_typed_note_is_simply_forgotten ... ok test tests::trash::a_note_deleted_before_its_first_save_keeps_its_text ... ok test tests::trash::delete_and_restore_answer_once_per_job_id ... ok test tests::trash::delete_moves_to_trash_and_undo_brings_it_back ... ok test tests::trash::delete_replay_with_a_stale_index_keeps_the_only_file ... ok test tests::trash::delete_waits_for_imported_incoming_links_before_remembering_their_identity ... ok test tests::trash::folder_rename_and_outside_move_bursts_keep_every_descendant ... ok test tests::trash::forget_deletes_file_and_history_forever ... ok test tests::trash::half_written_trash_folders_never_hide_a_live_note ... ok test tests::trash::outside_copy_finishes_a_metadata_only_interruption ... ok test tests::trash::restore_durably_indexes_a_note_without_an_embedded_id ... ok test tests::trash::restore_keeps_id_and_history_and_takes_a_free_name ... ok test tests::trash::restore_with_a_stale_index_really_moves_the_file_back ... ok test tests::trash::the_sweep_empties_only_notes_older_than_thirty_days ... ok test tests::trash::trash_ids_never_reach_another_home ... ok test tests::trash::trash_pages_newest_first ... ok test tests::trash::trashed_notes_leave_search_lists_and_backlinks_and_come_back ... ok test tests::unloading::a_connected_client_keeps_it ... ok test tests::tags::a_crash_mid_rename_resumes_and_renames_each_tag_once ... ok test tests::unloading::an_unused_home_unloads_and_answers_after ... ok test tests::unloading::an_open_note_keeps_it ... ok test tests::writers::every_writer_at_once_with_the_watcher ... ok test text::tests::mixed_endings_take_the_majority ... ok test text::tests::styles_round_trip ... ok test text::tests::uniform_files_round_trip_exactly ... ok test trash::tests::a_note_without_details_still_reads ... ok test trash::tests::candidates_include_notes_and_orphan_details_with_a_bounded_scan ... ok test trash::tests::details_without_a_note_are_not_a_note ... ok test trash::tests::missing_details_never_age_trash_from_the_notes_old_mtime ... ok test trash::tests::outside_copy_has_its_details_when_the_file_first_becomes_readable ... ok test versions::tests::folds_runs_by_author_kind_and_gap ... ok test watch::native_tests::bulk_files_only_notify_the_watcher_when_the_whole_note_is_placed ... ok test watch::native_tests::native_watch_ignores_reads_but_keeps_every_kind_of_outside_change ... ok test ydoc::seed_tests::initial_seed_matches_yrs_and_accepts_later_utf16_edits ... ok test ydoc::tests::fork_and_merge_keeps_concurrent_typing ... ok test ydoc::tests::reapplying_an_update_changes_nothing ... ok test ydoc::tests::utf16_offsets ... ok test tests::writers::every_writer_at_once_loses_and_doubles_nothing ... ok test tests::event_visibility::save_outside_retry ... ok test tests::shutdown::settlement::shutdown_settlement_state_machine ... ok test result: ok. 455 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 42.47s Running unittests src/main.rs (target/debug/deps/calternal_perf-ccda2fa50fa2d7c5) running 7 tests test args::tests::parses_trash_only_mode ... ok test scenarios::soak::tests::slope_of_a_line ... ok test scenarios::storm::tests::typing_stops_before_the_newline_ahead_of_outside_lines ... ok test stats::tests::medians_of_runs_and_pooled_singles ... ok test stats::tests::summary_max_is_the_largest_observed_sample_across_runs ... ok test live::tests::frames_round_trip_and_keystrokes_stay_whole ... ok test scenarios::trash::tests::permanent_deletion_never_removes_a_later_runs_live_note ... ok test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/storage-bench.rs (target/debug/deps/storage_bench-4f4305241ae7990c) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/tasks-bench.rs (target/debug/deps/tasks_bench-8313ffc5153bf696) running 2 tests test cold::tests::even_median_uses_both_middle_samples ... ok test cold::tests::median_keeps_real_growth_despite_a_storage_stall ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_plugin_hello-53ca8ca6107399a0) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_prefs-069abfa4287cc385) running 9 tests test tests::a_change_on_one_device_reaches_the_other ... ok test tests::keys_are_an_area_then_dotted_parts ... ok test tests::bad_keys_and_big_values_get_friendly_errors ... ok test tests::a_retry_with_the_same_key_acts_once ... ok test tests::people_do_not_share_preferences ... ok test tests::saving_the_same_value_again_is_quiet ... ok test tests::quick_saves_from_two_devices_all_land ... ok test tests::set_then_get_and_survive_a_restart ... ok test tests::at_most_200_keys_but_existing_ones_can_still_change ... ok test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s Running unittests src/lib.rs (target/debug/deps/calternal_search-ff67ffa340bd9f12) running 13 tests test fuzzy::tests::distance_counts_swaps_as_one ... ok test query::tests::lone_symbols_are_ignored ... ok test query::tests::dates_cover_whole_periods ... ok test read::tests::block_ids_are_found ... ok test query::tests::words_filters_and_phrases ... ok test fuzzy::tests::common_typos_are_fixed ... ok test read::tests::renumbering_shifts_placeholders ... ok test text::tests::bigrams_cover_unspaced_scripts ... ok test read::tests::text_matches_like_the_index ... ok test text::tests::fold_drops_accents_and_case ... ok test read::tests::excerpts_mark_matches_in_context ... ok test text::tests::words_keep_indic_vowel_signs ... ok test schema::tests::an_older_index_gets_its_titles_filled ... ok test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/search.rs (target/debug/deps/search-8eb084de93ee7287) running 13 tests test an_empty_search_shows_recent_things ... ok test every_script_is_searchable ... ok test behind_answers_at_once_and_catching_up_is_announced_once ... ok test a_restart_heals_whatever_was_missed ... ok test perf_search_answer_under_five_hundred_ms ... ignored, first-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test filters_by_tag_kind_and_date ... ok test odd_input_never_breaks_search ... ok test searches_answer_while_indexing_runs ... ok test prefixes_and_typos_are_forgiven ... ok test results_show_why_they_matched_and_where ... ok test people_only_ever_find_their_own_things ... ok test titles_first_then_recent_use_then_body ... ok test the_index_follows_changes_live ... ok test result: ok. 12 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.65s Running unittests src/lib.rs (target/debug/deps/calternal_server-6fec464ffce1c8cf) running 12 tests test live::tests::room_join_metadata_has_explicit_byte_bounds ... ok test rooms::tests::a_message_in_numbered_pieces_arrives_whole ... ok test rooms::tests::assembly_is_bounded_per_connection_and_globally_and_expiry_releases_it ... ok test rooms::tests::backpressure_refuses_the_room_before_later_checks ... ok test rooms::tests::duplicated_missing_and_inconsistent_chunks_never_deliver ... ok test rooms::tests::frames_round_trip ... ok test rooms::tests::malformed_chunk_headers_never_allow_later_checks ... ok test rooms::tests::old_membership_packets_and_results_cannot_reach_a_rejoined_room ... ok test compress::tests::big_answers_are_compressed_and_small_ones_are_not ... ok test rooms::tests::pending_and_joined_memberships_share_one_connection_count_bound ... ok test rooms::tests::wire_nonces_reject_old_frames_joins_and_leaves_without_tombstones ... ok test rooms::tests::exact_size_limit_is_delivered_but_a_larger_declaration_is_refused ... ok ```
Author
Owner

Full workspace tests at head 30f65caf: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed on the first run; no #757 rerun was needed. Output verbatim, part 4/4:

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

     Running tests/access.rs (target/debug/deps/access-2041f6ab947d6245)

running 1 test
test one_line_per_request_with_no_secrets ... ok

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

     Running tests/live.rs (target/debug/deps/live-e63e1799ca49eca8)

running 6 tests
test health_answers_without_signing_in ... ok
test a_stranger_token_asks_for_a_refresh ... ok
test signed_out_calls_get_a_friendly_refusal ... ok
test errors_carry_codes_not_internals ... ok
test reconnecting_catches_up_from_a_token ... ok
test http_to_journal_to_websocket ... ok

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

     Running tests/signout.rs (target/debug/deps/signout-8523396a0d732a37)

running 1 test
test signing_a_device_out_closes_its_live_socket ... ok

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

     Running tests/web.rs (target/debug/deps/web-a9987759b6b9c7db)

running 3 tests
test files_deep_links_and_the_api_live_side_by_side ... ok
test precompressed_files_are_sent_as_they_are_to_whoever_accepts_them ... ok
test caching_and_security_headers_follow_what_each_file_is ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_store-dc5119e9b339ecbc)

running 9 tests
test tests::a_store_with_a_listener_or_a_copy_is_in_use ... ok
test tests::commits_are_read_back_in_order ... ok
test tests::a_held_reader_does_not_block_commits_or_other_readers ... ok
test tests::idempotency_is_saved_with_the_events_or_not_at_all ... ok
test tests::live_entries_arrive_in_journal_order ... ok
test tests::tokens_survive_a_restart_and_reject_strangers ... ok
test tests::reads_are_capped ... ok
test tests::old_idempotency_records_are_swept_after_commits ... ok
test tests::old_idempotency_records_are_swept_when_the_store_opens ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_tasks-af09346ae519d011)

running 54 tests
test found::day::tests::normalized_days_round_trip_and_keep_order ... ok
test found::tests::borrowed_index_matches_public_parse_for_plain_linked_and_unicode_fields ... ok
test found::tests::checkbox_forms ... ok
test found::tests::days_and_times ... ok
test found::tests::borrowed_index_matches_public_parse_in_commonmark_contexts ... ok
test found::tests::empty_checkbox_labels_keep_lf_and_crlf_line_numbers ... ok
test found::tests::every_unrecognised_status_reads_as_open_without_changing_the_source ... ok
test found::tests::finds_checkboxes_everywhere_but_code_and_frontmatter ... ok
test found::tests::first_link_on_the_line_is_the_target ... ok
test found::tests::indexed_display_preserves_unicode_blocks_order_and_duplicate_locations ... ok
test found::tests::lenient_reading ... ok
test found::tests::borrowed_index_preserves_task_detection_and_excludes_task_checklists ... ok
test found::tests::linked_tasks_after_fences_keep_their_targets ... ok
test found::tests::malformed_unrelated_yaml_keeps_a_list_valued_status_visible ... ok
test found::tests::reference_titles_keep_commonmark_list_boundaries ... ok
test found::tests::review_code_and_html_are_not_checkboxes ... ok
test found::tests::reads_a_task_note ... ok
test found::tests::unicode_marks_and_nested_boxes_survive_candidate_filtering ... ok
test index::codec::tests::arbitrary_paths_round_trip ... ok
test index::codec::tests::line_vectors_and_corruption ... ok
test index::codec::tests::line_locations_round_trip ... ok
test index::flags::tests::every_parsed_combination_round_trips ... ok
test index::row::tests::shared_days_follow_parser_validity_and_preserve_raw_values ... ok
test index::row::tests::unchanged_fields_skip_writes_but_tag_only_changes_are_stored ... ok
test index::codec::tests::path_padding_and_raw_unicode_do_not_alias ... ok

running 1 test
test index::tags_tests::independent_review_755_crash_between_task_and_membership_writes_is_atomic ... ok
test index::tags_tests::tag_changes_and_reused_keys_keep_public_memberships_and_counts ... ok
test found::tests::checkbox_fast_path_matches_commonmark ... ok
test tests::closed_tags_keep_child_groups_and_reopening_restores_sort_fields ... ok
test found::tests::markdown_links_and_task_items_share_commonmark_boundaries ... ok
test tests::field_edits_do_not_reclassify_inbound_checkboxes ... ok
test tests::crash_child ... ok
test tests::linked_boxes_stay_tracked_until_the_last_matching_task_leaves ... ok
test tests::lists_groups_and_counts ... ok
test index::tags_tests::independent_review_755_random_membership_matches_model_and_rolls_back ... ok
test tests::kill_9_during_field_writes_loses_nothing_acknowledged ... ok
test tests::rebuild_gives_the_same_rows ... ok
test tests::review_broken_frontmatter_refuses_update ... ok
test tests::outside_edits_reach_the_lists ... ok
test tests::review_long_code_fence_hides_checkboxes ... ok
test tests::review_outside_edit_during_pending_task_write ... ok
test tests::review_upcoming_with_past_and_future_dates ... ok
test tests::tag_membership::independent_review_755_opens_dev_format_cache_without_changing_files ... ok
test tests::tag_membership::tag_lists_read_new_fields_without_rewriting_membership ... ok
test tests::task_checklist_is_reindexed_when_the_note_stops_being_a_task ... ok
test tests::task_notes_are_hidden_only_from_notes_lists_and_unknown_status_is_kept ... ok
test tests::unreadable_frontmatter_is_shown_but_never_changed ... ok
test tests::untracked_is_open_checkboxes_that_are_not_tasks ... ok
test tests::update_changes_only_its_keys_and_lists_follow_at_once ... ok
test update::tests::checks_values ... ok
test update::tests::null_and_missing_differ ... ok
test tests::a_cold_fill_gives_the_same_rows_as_the_usual_way ... ok
test tests::review_live_list_has_consistent_rows_and_counts ... ok
test tests::order::sql_and_rust_sort_the_same ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_testkit-84605cced32b9d05)

running 0 tests

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

   Doc-tests calternal_attachments

running 0 tests

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

   Doc-tests calternal_auth

running 0 tests

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

   Doc-tests calternal_backdrops

running 0 tests

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

   Doc-tests calternal_contacts

running 0 tests

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

   Doc-tests calternal_contacts_actions

running 0 tests

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

   Doc-tests calternal_core

running 0 tests

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

   Doc-tests calternal_daily

running 0 tests

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

   Doc-tests calternal_engine

running 0 tests

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

   Doc-tests calternal_fixtures

running 0 tests

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

   Doc-tests calternal_fsio

running 0 tests

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

   Doc-tests calternal_memory

running 0 tests

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

   Doc-tests calternal_migrate_v0

running 0 tests

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

   Doc-tests calternal_notes

running 0 tests

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

   Doc-tests calternal_plugin_hello

running 0 tests

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

   Doc-tests calternal_prefs

running 0 tests

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

   Doc-tests calternal_search

running 0 tests

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

   Doc-tests calternal_server

running 0 tests

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

   Doc-tests calternal_store

running 0 tests

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

   Doc-tests calternal_tasks

running 0 tests

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

   Doc-tests calternal_testkit

running 0 tests

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


Gate output verbatim:

full workspace tests exit=0
Full workspace tests at head 30f65caf: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed on the first run; no #757 rerun was needed. Output verbatim, part 4/4: ```text test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s Running tests/access.rs (target/debug/deps/access-2041f6ab947d6245) running 1 test test one_line_per_request_with_no_secrets ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/live.rs (target/debug/deps/live-e63e1799ca49eca8) running 6 tests test health_answers_without_signing_in ... ok test a_stranger_token_asks_for_a_refresh ... ok test signed_out_calls_get_a_friendly_refusal ... ok test errors_carry_codes_not_internals ... ok test reconnecting_catches_up_from_a_token ... ok test http_to_journal_to_websocket ... ok test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/signout.rs (target/debug/deps/signout-8523396a0d732a37) running 1 test test signing_a_device_out_closes_its_live_socket ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/web.rs (target/debug/deps/web-a9987759b6b9c7db) running 3 tests test files_deep_links_and_the_api_live_side_by_side ... ok test precompressed_files_are_sent_as_they_are_to_whoever_accepts_them ... ok test caching_and_security_headers_follow_what_each_file_is ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_store-dc5119e9b339ecbc) running 9 tests test tests::a_store_with_a_listener_or_a_copy_is_in_use ... ok test tests::commits_are_read_back_in_order ... ok test tests::a_held_reader_does_not_block_commits_or_other_readers ... ok test tests::idempotency_is_saved_with_the_events_or_not_at_all ... ok test tests::live_entries_arrive_in_journal_order ... ok test tests::tokens_survive_a_restart_and_reject_strangers ... ok test tests::reads_are_capped ... ok test tests::old_idempotency_records_are_swept_after_commits ... ok test tests::old_idempotency_records_are_swept_when_the_store_opens ... ok test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.31s Running unittests src/lib.rs (target/debug/deps/calternal_tasks-af09346ae519d011) running 54 tests test found::day::tests::normalized_days_round_trip_and_keep_order ... ok test found::tests::borrowed_index_matches_public_parse_for_plain_linked_and_unicode_fields ... ok test found::tests::checkbox_forms ... ok test found::tests::days_and_times ... ok test found::tests::borrowed_index_matches_public_parse_in_commonmark_contexts ... ok test found::tests::empty_checkbox_labels_keep_lf_and_crlf_line_numbers ... ok test found::tests::every_unrecognised_status_reads_as_open_without_changing_the_source ... ok test found::tests::finds_checkboxes_everywhere_but_code_and_frontmatter ... ok test found::tests::first_link_on_the_line_is_the_target ... ok test found::tests::indexed_display_preserves_unicode_blocks_order_and_duplicate_locations ... ok test found::tests::lenient_reading ... ok test found::tests::borrowed_index_preserves_task_detection_and_excludes_task_checklists ... ok test found::tests::linked_tasks_after_fences_keep_their_targets ... ok test found::tests::malformed_unrelated_yaml_keeps_a_list_valued_status_visible ... ok test found::tests::reference_titles_keep_commonmark_list_boundaries ... ok test found::tests::review_code_and_html_are_not_checkboxes ... ok test found::tests::reads_a_task_note ... ok test found::tests::unicode_marks_and_nested_boxes_survive_candidate_filtering ... ok test index::codec::tests::arbitrary_paths_round_trip ... ok test index::codec::tests::line_vectors_and_corruption ... ok test index::codec::tests::line_locations_round_trip ... ok test index::flags::tests::every_parsed_combination_round_trips ... ok test index::row::tests::shared_days_follow_parser_validity_and_preserve_raw_values ... ok test index::row::tests::unchanged_fields_skip_writes_but_tag_only_changes_are_stored ... ok test index::codec::tests::path_padding_and_raw_unicode_do_not_alias ... ok running 1 test test index::tags_tests::independent_review_755_crash_between_task_and_membership_writes_is_atomic ... ok test index::tags_tests::tag_changes_and_reused_keys_keep_public_memberships_and_counts ... ok test found::tests::checkbox_fast_path_matches_commonmark ... ok test tests::closed_tags_keep_child_groups_and_reopening_restores_sort_fields ... ok test found::tests::markdown_links_and_task_items_share_commonmark_boundaries ... ok test tests::field_edits_do_not_reclassify_inbound_checkboxes ... ok test tests::crash_child ... ok test tests::linked_boxes_stay_tracked_until_the_last_matching_task_leaves ... ok test tests::lists_groups_and_counts ... ok test index::tags_tests::independent_review_755_random_membership_matches_model_and_rolls_back ... ok test tests::kill_9_during_field_writes_loses_nothing_acknowledged ... ok test tests::rebuild_gives_the_same_rows ... ok test tests::review_broken_frontmatter_refuses_update ... ok test tests::outside_edits_reach_the_lists ... ok test tests::review_long_code_fence_hides_checkboxes ... ok test tests::review_outside_edit_during_pending_task_write ... ok test tests::review_upcoming_with_past_and_future_dates ... ok test tests::tag_membership::independent_review_755_opens_dev_format_cache_without_changing_files ... ok test tests::tag_membership::tag_lists_read_new_fields_without_rewriting_membership ... ok test tests::task_checklist_is_reindexed_when_the_note_stops_being_a_task ... ok test tests::task_notes_are_hidden_only_from_notes_lists_and_unknown_status_is_kept ... ok test tests::unreadable_frontmatter_is_shown_but_never_changed ... ok test tests::untracked_is_open_checkboxes_that_are_not_tasks ... ok test tests::update_changes_only_its_keys_and_lists_follow_at_once ... ok test update::tests::checks_values ... ok test update::tests::null_and_missing_differ ... ok test tests::a_cold_fill_gives_the_same_rows_as_the_usual_way ... ok test tests::review_live_list_has_consistent_rows_and_counts ... ok test tests::order::sql_and_rust_sort_the_same ... ok test result: ok. 54 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.93s Running unittests src/lib.rs (target/debug/deps/calternal_testkit-84605cced32b9d05) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_attachments running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_auth running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_backdrops running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_contacts running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_contacts_actions running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_core running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_daily running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_engine running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_fixtures running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_fsio running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_memory running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_migrate_v0 running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_notes running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_plugin_hello running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_prefs running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_search running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_server running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_store running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_tasks running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_testkit running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s ``` Gate output verbatim: ```text full workspace tests exit=0 ```
Author
Owner

Correctness and build gates passed at head 30f65cafb0. The workspace run passed 1302 tests with 21 ignored and no failures; full output is posted in the preceding four comments. The known Tasks abrupt-stop test passed on its first run.

Gate output verbatim:

fmt --check exit=0
clippy -D warnings exit=0
perf harness tests exit=0
release build exit=0
full workspace tests exit=0

Strict clippy output verbatim:

    Checking calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio)
    Checking calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server)
    Checking calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes)
    Checking calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0)
    Checking calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs)
    Checking calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments)
    Checking calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops)
    Checking calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth)
    Checking calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks)
    Checking calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions)
    Checking calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily)
    Checking calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf)
    Checking calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.35s

Perf harness tests verbatim:

   Compiling tracing v0.1.44
   Compiling tokio v1.53.2
   Compiling futures-macro v0.3.34
   Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio)
   Compiling futures-core v0.3.34
   Compiling futures-sink v0.3.34
   Compiling futures-util v0.3.34
   Compiling tungstenite v0.30.0
   Compiling tracing-subscriber v0.3.23
   Compiling calternal-fixtures v0.1.0 (/home/agent/wt/perf-727-honest/crates/fixtures)
   Compiling calternal-core v0.1.0 (/home/agent/wt/perf-727-honest/crates/core)
   Compiling tokio-tungstenite v0.30.0
   Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes)
   Compiling calternal-store v0.1.0 (/home/agent/wt/perf-727-honest/crates/store)
   Compiling calternal-engine v0.1.0 (/home/agent/wt/perf-727-honest/crates/engine)
   Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks)
   Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 18.52s
     Running unittests src/main.rs (target/debug/deps/calternal_perf-6a21364057b6bcfd)

running 7 tests
test args::tests::parses_trash_only_mode ... ok
test scenarios::soak::tests::slope_of_a_line ... ok
test scenarios::storm::tests::typing_stops_before_the_newline_ahead_of_outside_lines ... ok
test stats::tests::medians_of_runs_and_pooled_singles ... ok
test stats::tests::summary_max_is_the_largest_observed_sample_across_runs ... ok
test live::tests::frames_round_trip_and_keystrokes_stay_whole ... ok
test scenarios::trash::tests::permanent_deletion_never_removes_a_later_runs_live_note ... ok

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

     Running unittests src/bin/storage-bench.rs (target/debug/deps/storage_bench-3280964207e72c24)

running 0 tests

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

     Running unittests src/bin/tasks-bench.rs (target/debug/deps/tasks_bench-2f8ffd4b799f7253)

running 2 tests
test cold::tests::even_median_uses_both_middle_samples ... ok
test cold::tests::median_keeps_real_growth_despite_a_storage_stall ... ok

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


Release build output verbatim:

   Compiling rustix v1.1.5
   Compiling linux-raw-sys v0.12.1
   Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio)
   Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes)
   Compiling calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server)
   Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0)
   Compiling calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs)
   Compiling calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops)
   Compiling calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth)
   Compiling calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments)
   Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks)
   Compiling calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily)
   Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions)
   Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf)
   Compiling calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal)
    Finished `release` profile [optimized] target(s) in 2m 59s

Starting three fresh full server reports at each of 10k and 100k, plus three 15-pair task comparisons per size, under perf-run.sh and its perf lock. The binaries are snapshotted in the job evidence folder and hashed. Every cold sample requires a successful sudo perf-drop-caches call. Budget SHA-256 is unchanged from #754: 719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d. All reports, including any failed gates and open.note values, will be retained.

Correctness and build gates passed at head 30f65cafb06eeacab3328dc284c7eeb0706a6c9b. The workspace run passed 1302 tests with 21 ignored and no failures; full output is posted in the preceding four comments. The known Tasks abrupt-stop test passed on its first run. Gate output verbatim: ```text fmt --check exit=0 clippy -D warnings exit=0 perf harness tests exit=0 release build exit=0 full workspace tests exit=0 ``` Strict clippy output verbatim: ```text Checking calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio) Checking calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server) Checking calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes) Checking calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0) Checking calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs) Checking calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments) Checking calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops) Checking calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth) Checking calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks) Checking calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions) Checking calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily) Checking calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf) Checking calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal) Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.35s ``` Perf harness tests verbatim: ```text Compiling tracing v0.1.44 Compiling tokio v1.53.2 Compiling futures-macro v0.3.34 Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio) Compiling futures-core v0.3.34 Compiling futures-sink v0.3.34 Compiling futures-util v0.3.34 Compiling tungstenite v0.30.0 Compiling tracing-subscriber v0.3.23 Compiling calternal-fixtures v0.1.0 (/home/agent/wt/perf-727-honest/crates/fixtures) Compiling calternal-core v0.1.0 (/home/agent/wt/perf-727-honest/crates/core) Compiling tokio-tungstenite v0.30.0 Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes) Compiling calternal-store v0.1.0 (/home/agent/wt/perf-727-honest/crates/store) Compiling calternal-engine v0.1.0 (/home/agent/wt/perf-727-honest/crates/engine) Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks) Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf) Finished `test` profile [unoptimized + debuginfo] target(s) in 18.52s Running unittests src/main.rs (target/debug/deps/calternal_perf-6a21364057b6bcfd) running 7 tests test args::tests::parses_trash_only_mode ... ok test scenarios::soak::tests::slope_of_a_line ... ok test scenarios::storm::tests::typing_stops_before_the_newline_ahead_of_outside_lines ... ok test stats::tests::medians_of_runs_and_pooled_singles ... ok test stats::tests::summary_max_is_the_largest_observed_sample_across_runs ... ok test live::tests::frames_round_trip_and_keystrokes_stay_whole ... ok test scenarios::trash::tests::permanent_deletion_never_removes_a_later_runs_live_note ... ok test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/storage-bench.rs (target/debug/deps/storage_bench-3280964207e72c24) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/tasks-bench.rs (target/debug/deps/tasks_bench-2f8ffd4b799f7253) running 2 tests test cold::tests::even_median_uses_both_middle_samples ... ok test cold::tests::median_keeps_real_growth_despite_a_storage_stall ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s ``` Release build output verbatim: ```text Compiling rustix v1.1.5 Compiling linux-raw-sys v0.12.1 Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio) Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes) Compiling calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server) Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0) Compiling calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs) Compiling calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops) Compiling calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth) Compiling calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments) Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks) Compiling calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily) Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions) Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf) Compiling calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal) Finished `release` profile [optimized] target(s) in 2m 59s ``` Starting three fresh full server reports at each of 10k and 100k, plus three 15-pair task comparisons per size, under perf-run.sh and its perf lock. The binaries are snapshotted in the job evidence folder and hashed. Every cold sample requires a successful sudo perf-drop-caches call. Budget SHA-256 is unchanged from #754: 719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d. All reports, including any failed gates and open.note values, will be retained.
Author
Owner

The first measurement driver launch stopped before creating a fixture or starting a report: /srv/homes itself is root owned and mkdir returned PermissionError. The writable shared perf parent is /srv/homes/perf, on the same HDD xfs mount. The driver now creates a unique job-owned child there; no other job directory is read or removed. Measurements have restarted there with the same head and binaries. No failed or warm-cache sample has been counted.

The first measurement driver launch stopped before creating a fixture or starting a report: /srv/homes itself is root owned and mkdir returned PermissionError. The writable shared perf parent is /srv/homes/perf, on the same HDD xfs mount. The driver now creates a unique job-owned child there; no other job directory is read or removed. Measurements have restarted there with the same head and binaries. No failed or warm-cache sample has been counted.
Author
Owner

Fresh full server report 1/3 on perf-test-01, head 30f65cafb0. HDD Homes /srv/homes (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window per size. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 17 times inside the harness; expected internal count is 17. Elapsed 1240.8 seconds. Fixture Homes and state for this report have been deleted. No budgets changed.

Report verbatim:

Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational)

10000 notes (3000 daily, 35 MB, 5 long notes)

metric unit p50 p95 max noise runs × samples budget
cold.disk_written MB 46.4 46.5 46.5 0% 3 × 1
cold.first_page ms 45.7 62.8 62.8 50% 3 × 1
cold.index s 1.17 1.38 1.38 24% 3 × 1 p95 ≤ 10 ok
cold.mem_peak MB 67.5 68.7 68.7 2% 3 × 1
cold.notes_per_s notes/s 8552 9138 9138 22% 3 × 1 p50 ≥ 2000 ok
cold.startup ms 95.2 207 207 130% 3 × 1 p95 ≤ 500 ok
home.first_page ms 16.5 19.6 19.6 36% 5 × 1 p95 ≤ 300 ok
home.page ms 0.68 0.97 2.03 16% 5 × 20 p95 ≤ 50 ok
home.page_big ms 21.1 26.2 28.9 29% 5 × 5
home.page_next ms 0.78 1.20 2.92 29% 5 × 20 p95 ≤ 50 ok
home.page_tag ms 4.16 5.82 112 8% 5 × 20 p95 ≤ 50 ok
home.page_title ms 0.58 0.75 1.62 27% 5 × 20 p95 ≤ 50 ok
idle.cpu_pct % 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.1 ok
idle.cpu_ticks ticks 0.00 0.00 0.00 0% 1 × 1
idle.rss MB 36.9 36.9 36.9 0% 1 × 1
idle.threads count 15.0 15.0 15.0 0% 1 × 1
idle.wakeups_per_s /s 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.2 ok
journal.catch_up ms 32.5 42.2 42.2 49% 5 × 1 p95 ≤ 1000 ok
journal.entries count 10366 10720 10720 7% 5 × 1
journal.page ms 2.77 4.10 4.91 43% 5 × 11
load.typing_cpu_pct % 0.28 0.28 0.28 0% 1 × 1 p95 ≤ 2 ok
load.typing_wakeups_per_s /s 59.8 59.8 59.8 0% 1 × 1
mem.after_first_page MB 21.4 22.2 22.2 6% 5 × 1
mem.after_opens MB 41.4 42.7 42.7 12% 5 × 1
mem.after_search MB 44.5 47.0 47.0 6% 5 × 1
mem.idle MB 17.7 18.0 18.0 7% 5 × 1 p95 ≤ 64 ok
mem.peak MB 47.0 47.2 47.2 2% 5 × 1 p95 ≤ 256 ok
open.api_get ms 3.93 7.18 15.6 48% 5 × 24 p95 ≤ 50 ok
open.long_note ms 13.4 14.7 14.7 22% 5 × 1 p95 ≤ 250 ok
open.note ms 1.41 5.00 18.3 30% 5 × 24 p95 ≤ 15 ok
search.catch_up s 2.02 2.02 4.01 100% 5 × 3
search.first_query ms 32.0 34.0 34.0 21% 5 × 1 p95 ≤ 1000 ok
search.query ms 1.91 8.17 29.8 40% 5 × 55 p95 ≤ 100 ok
shutdown ms 65.0 87.2 87.2 35% 5 × 1 p95 ≤ 1000 ok
startup.healthz ms 74.8 103 103 41% 5 × 1 p95 ≤ 300 ok
storm.converge ms 174 176 176 5% 5 × 1 p95 ≤ 2000 ok
storm.disk_written MB 41.1 42.1 42.1 15% 5 × 1 p95 ≤ 50 ok
storm.dropped_clients count 0.00 0.00 0.00 0% 5 × 1 p95 ≤ 0 ok
storm.edits_per_s edits/s 5975 6130 6130 5% 5 × 1 p50 ≥ 1000 ok
storm.outside_edits count 4.00 4.00 4.00 0% 5 × 1
storm.save_ack ms 4.53 7.65 25.5 2% 5 × 10000 p95 ≤ 150 ok
storm.typing s 1.67 1.71 1.71 5% 5 × 1
sync.durable_write ms 11.7 16.2 44.2 4% 5 × 30
sync.round_trip ms 0.20 0.32 3.65 11% 5 × 200 p95 ≤ 10 ok
sync.save_ack ms 2.55 3.23 15.7 73% 5 × 200 p95 ≤ 40 ok
trash.delete ms 26.4 47.8 93.6 66% 5 × 30
trash.forget ms 5.31 12.2 27.0 21% 5 × 30
trash.restore ms 62.2 112 130 15% 5 × 30
uploads.response ms 94.1 121 151 3% 5 × 20
uploads.round_trip ms 0.96 1.20 4.03 13% 5 × 200
uploads.save_ack ms 3.14 4.71 13.8 4% 5 × 200

100000 notes (10000 daily, 422 MB, 50 long notes)

metric unit p50 p95 max noise runs × samples budget
cold.disk_written MB 540 541 541 0% 3 × 1
cold.first_page ms 38.7 43.7 43.7 13% 3 × 1
cold.index s 13.9 15.1 15.1 13% 3 × 1 p95 ≤ 60 ok
cold.mem_peak MB 249 253 253 2% 3 × 1
cold.notes_per_s notes/s 7196 7493 7493 12% 3 × 1 p50 ≥ 2000 ok
cold.startup ms 103 159 159 60% 3 × 1 p95 ≤ 500 ok
home.first_page ms 21.1 27.1 27.1 33% 5 × 1 p95 ≤ 100 ok
home.page ms 0.93 1.46 2.70 44% 5 × 20 p95 ≤ 50 ok
home.page_big ms 144 179 392 17% 5 × 5
home.page_next ms 0.80 1.55 4.23 34% 5 × 20 p95 ≤ 50 ok
home.page_tag ms 4.54 5.63 116 20% 5 × 20 p95 ≤ 50 ok
home.page_title ms 0.76 1.32 5.60 58% 5 × 20 p95 ≤ 50 ok
idle.cpu_pct % 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.1 ok
idle.cpu_ticks ticks 0.00 0.00 0.00 0% 1 × 1
idle.rss MB 101 101 101 0% 1 × 1 p95 ≤ 100 over
idle.threads count 15.0 15.0 15.0 0% 1 × 1
idle.wakeups_per_s /s 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.2 ok
journal.catch_up ms 380 460 460 32% 5 × 1 p95 ≤ 2000 ok
journal.entries count 100372 100735 100735 1% 5 × 1
journal.page ms 3.44 4.47 18.2 36% 5 × 101
load.typing_cpu_pct % 0.45 0.45 0.45 0% 1 × 1 p95 ≤ 2 ok
load.typing_wakeups_per_s /s 63.6 63.6 63.6 0% 1 × 1
mem.after_first_page MB 22.0 22.9 22.9 6% 5 × 1
mem.after_opens MB 99.7 119 119 48% 5 × 1 p95 ≤ 300 ok
mem.after_search MB 121 131 131 11% 5 × 1
mem.idle MB 16.7 17.0 17.0 3% 5 × 1 p95 ≤ 64 ok
mem.peak MB 137 145 145 8% 5 × 1 p95 ≤ 256 ok
open.api_get ms 6.90 26.9 54.0 129% 5 × 24 p95 ≤ 50 ok
open.long_note ms 24.4 37.8 37.8 70% 5 × 1 p95 ≤ 250 ok
open.note ms 3.58 17.6 25.0 53% 5 × 24 p95 ≤ 15 over
search.catch_up s 2.04 2.04 46.1 101% 5 × 3
search.first_query ms 48.9 73.2 73.2 96% 5 × 1 p95 ≤ 1000 ok
search.query ms 2.53 23.7 273 61% 5 × 55 p95 ≤ 100 ok
shutdown ms 113 129 129 19% 5 × 1 p95 ≤ 1000 ok
startup.healthz ms 109 124 124 32% 5 × 1 p95 ≤ 300 ok
storm.converge ms 178 225 225 31% 5 × 1 p95 ≤ 2000 ok
storm.disk_written MB 40.9 53.4 53.4 32% 5 × 1 p95 ≤ 50 over target
storm.dropped_clients count 0.00 0.00 0.00 0% 5 × 1 p95 ≤ 0 ok
storm.edits_per_s edits/s 5660 5877 5877 53% 5 × 1 p50 ≥ 1000 ok
storm.outside_edits count 4.00 7.00 7.00 75% 5 × 1
storm.save_ack ms 4.65 10.7 117 70% 5 × 10000 p95 ≤ 150 ok
storm.typing s 1.77 3.47 3.47 100% 5 × 1
sync.durable_write ms 11.9 18.3 240 63% 5 × 30
sync.round_trip ms 0.28 0.36 4.49 46% 5 × 200 p95 ≤ 10 ok
sync.save_ack ms 2.61 5.00 26.6 40% 5 × 200 p95 ≤ 40 ok
trash.delete ms 52.9 109 207 26% 5 × 30
trash.forget ms 6.26 10.3 81.2 47% 5 × 30
trash.restore ms 124 195 261 25% 5 × 30
uploads.response ms 98.2 150 379 66% 5 × 20
uploads.round_trip ms 1.09 1.58 7.02 22% 5 × 200
uploads.save_ack ms 3.43 7.59 64.9 65% 5 × 200

Gate output verbatim:

over target (not gated yet): 100000 notes: storm.disk_written p95 53.4 > 50
over budget: 100000 notes: idle.rss p95 101 > 100
over budget: 100000 notes: open.note p95 17.6 > 15
process exit=1

Binary and budget SHA-256:

{
  "calternal": "5217fd5d26b701059cf7e27c8c3a3a9e39f1568c7a16b3e47a09f03dd2fc68a9",
  "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e",
  "tasks-bench": "fbafb2a5aa6081b347ec5b4c7082ba3d264b4f0749c62a0b0065a1fbf5411e07",
  "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d"
}
Fresh full server report 1/3 on perf-test-01, head 30f65cafb06eeacab3328dc284c7eeb0706a6c9b. HDD Homes /srv/homes (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window per size. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 17 times inside the harness; expected internal count is 17. Elapsed 1240.8 seconds. Fixture Homes and state for this report have been deleted. No budgets changed. Report verbatim: Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational) ### 10000 notes (3000 daily, 35 MB, 5 long notes) | metric | unit | p50 | p95 | max | noise | runs × samples | budget | | |---|---|---:|---:|---:|---:|---:|---|---| | cold.disk_written | MB | 46.4 | 46.5 | 46.5 | 0% | 3 × 1 | | | | cold.first_page | ms | 45.7 | 62.8 | 62.8 | 50% | 3 × 1 | | | | cold.index | s | 1.17 | 1.38 | 1.38 | 24% | 3 × 1 | p95 ≤ 10 | ok | | cold.mem_peak | MB | 67.5 | 68.7 | 68.7 | 2% | 3 × 1 | | | | cold.notes_per_s | notes/s | 8552 | 9138 | 9138 | 22% | 3 × 1 | p50 ≥ 2000 | ok | | cold.startup | ms | 95.2 | 207 | 207 | 130% | 3 × 1 | p95 ≤ 500 | ok | | home.first_page | ms | 16.5 | 19.6 | 19.6 | 36% | 5 × 1 | p95 ≤ 300 | ok | | home.page | ms | 0.68 | 0.97 | 2.03 | 16% | 5 × 20 | p95 ≤ 50 | ok | | home.page_big | ms | 21.1 | 26.2 | 28.9 | 29% | 5 × 5 | | | | home.page_next | ms | 0.78 | 1.20 | 2.92 | 29% | 5 × 20 | p95 ≤ 50 | ok | | home.page_tag | ms | 4.16 | 5.82 | 112 | 8% | 5 × 20 | p95 ≤ 50 | ok | | home.page_title | ms | 0.58 | 0.75 | 1.62 | 27% | 5 × 20 | p95 ≤ 50 | ok | | idle.cpu_pct | % | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.1 | ok | | idle.cpu_ticks | ticks | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | | | | idle.rss | MB | 36.9 | 36.9 | 36.9 | 0% | 1 × 1 | | | | idle.threads | count | 15.0 | 15.0 | 15.0 | 0% | 1 × 1 | | | | idle.wakeups_per_s | /s | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.2 | ok | | journal.catch_up | ms | 32.5 | 42.2 | 42.2 | 49% | 5 × 1 | p95 ≤ 1000 | ok | | journal.entries | count | 10366 | 10720 | 10720 | 7% | 5 × 1 | | | | journal.page | ms | 2.77 | 4.10 | 4.91 | 43% | 5 × 11 | | | | load.typing_cpu_pct | % | 0.28 | 0.28 | 0.28 | 0% | 1 × 1 | p95 ≤ 2 | ok | | load.typing_wakeups_per_s | /s | 59.8 | 59.8 | 59.8 | 0% | 1 × 1 | | | | mem.after_first_page | MB | 21.4 | 22.2 | 22.2 | 6% | 5 × 1 | | | | mem.after_opens | MB | 41.4 | 42.7 | 42.7 | 12% | 5 × 1 | | | | mem.after_search | MB | 44.5 | 47.0 | 47.0 | 6% | 5 × 1 | | | | mem.idle | MB | 17.7 | 18.0 | 18.0 | 7% | 5 × 1 | p95 ≤ 64 | ok | | mem.peak | MB | 47.0 | 47.2 | 47.2 | 2% | 5 × 1 | p95 ≤ 256 | ok | | open.api_get | ms | 3.93 | 7.18 | 15.6 | 48% | 5 × 24 | p95 ≤ 50 | ok | | open.long_note | ms | 13.4 | 14.7 | 14.7 | 22% | 5 × 1 | p95 ≤ 250 | ok | | open.note | ms | 1.41 | 5.00 | 18.3 | 30% | 5 × 24 | p95 ≤ 15 | ok | | search.catch_up | s | 2.02 | 2.02 | 4.01 | 100% | 5 × 3 | | | | search.first_query | ms | 32.0 | 34.0 | 34.0 | 21% | 5 × 1 | p95 ≤ 1000 | ok | | search.query | ms | 1.91 | 8.17 | 29.8 | 40% | 5 × 55 | p95 ≤ 100 | ok | | shutdown | ms | 65.0 | 87.2 | 87.2 | 35% | 5 × 1 | p95 ≤ 1000 | ok | | startup.healthz | ms | 74.8 | 103 | 103 | 41% | 5 × 1 | p95 ≤ 300 | ok | | storm.converge | ms | 174 | 176 | 176 | 5% | 5 × 1 | p95 ≤ 2000 | ok | | storm.disk_written | MB | 41.1 | 42.1 | 42.1 | 15% | 5 × 1 | p95 ≤ 50 | ok | | storm.dropped_clients | count | 0.00 | 0.00 | 0.00 | 0% | 5 × 1 | p95 ≤ 0 | ok | | storm.edits_per_s | edits/s | 5975 | 6130 | 6130 | 5% | 5 × 1 | p50 ≥ 1000 | ok | | storm.outside_edits | count | 4.00 | 4.00 | 4.00 | 0% | 5 × 1 | | | | storm.save_ack | ms | 4.53 | 7.65 | 25.5 | 2% | 5 × 10000 | p95 ≤ 150 | ok | | storm.typing | s | 1.67 | 1.71 | 1.71 | 5% | 5 × 1 | | | | sync.durable_write | ms | 11.7 | 16.2 | 44.2 | 4% | 5 × 30 | | | | sync.round_trip | ms | 0.20 | 0.32 | 3.65 | 11% | 5 × 200 | p95 ≤ 10 | ok | | sync.save_ack | ms | 2.55 | 3.23 | 15.7 | 73% | 5 × 200 | p95 ≤ 40 | ok | | trash.delete | ms | 26.4 | 47.8 | 93.6 | 66% | 5 × 30 | | | | trash.forget | ms | 5.31 | 12.2 | 27.0 | 21% | 5 × 30 | | | | trash.restore | ms | 62.2 | 112 | 130 | 15% | 5 × 30 | | | | uploads.response | ms | 94.1 | 121 | 151 | 3% | 5 × 20 | | | | uploads.round_trip | ms | 0.96 | 1.20 | 4.03 | 13% | 5 × 200 | | | | uploads.save_ack | ms | 3.14 | 4.71 | 13.8 | 4% | 5 × 200 | | | ### 100000 notes (10000 daily, 422 MB, 50 long notes) | metric | unit | p50 | p95 | max | noise | runs × samples | budget | | |---|---|---:|---:|---:|---:|---:|---|---| | cold.disk_written | MB | 540 | 541 | 541 | 0% | 3 × 1 | | | | cold.first_page | ms | 38.7 | 43.7 | 43.7 | 13% | 3 × 1 | | | | cold.index | s | 13.9 | 15.1 | 15.1 | 13% | 3 × 1 | p95 ≤ 60 | ok | | cold.mem_peak | MB | 249 | 253 | 253 | 2% | 3 × 1 | | | | cold.notes_per_s | notes/s | 7196 | 7493 | 7493 | 12% | 3 × 1 | p50 ≥ 2000 | ok | | cold.startup | ms | 103 | 159 | 159 | 60% | 3 × 1 | p95 ≤ 500 | ok | | home.first_page | ms | 21.1 | 27.1 | 27.1 | 33% | 5 × 1 | p95 ≤ 100 | ok | | home.page | ms | 0.93 | 1.46 | 2.70 | 44% | 5 × 20 | p95 ≤ 50 | ok | | home.page_big | ms | 144 | 179 | 392 | 17% | 5 × 5 | | | | home.page_next | ms | 0.80 | 1.55 | 4.23 | 34% | 5 × 20 | p95 ≤ 50 | ok | | home.page_tag | ms | 4.54 | 5.63 | 116 | 20% | 5 × 20 | p95 ≤ 50 | ok | | home.page_title | ms | 0.76 | 1.32 | 5.60 | 58% | 5 × 20 | p95 ≤ 50 | ok | | idle.cpu_pct | % | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.1 | ok | | idle.cpu_ticks | ticks | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | | | | idle.rss | MB | 101 | 101 | 101 | 0% | 1 × 1 | p95 ≤ 100 | **over** | | idle.threads | count | 15.0 | 15.0 | 15.0 | 0% | 1 × 1 | | | | idle.wakeups_per_s | /s | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.2 | ok | | journal.catch_up | ms | 380 | 460 | 460 | 32% | 5 × 1 | p95 ≤ 2000 | ok | | journal.entries | count | 100372 | 100735 | 100735 | 1% | 5 × 1 | | | | journal.page | ms | 3.44 | 4.47 | 18.2 | 36% | 5 × 101 | | | | load.typing_cpu_pct | % | 0.45 | 0.45 | 0.45 | 0% | 1 × 1 | p95 ≤ 2 | ok | | load.typing_wakeups_per_s | /s | 63.6 | 63.6 | 63.6 | 0% | 1 × 1 | | | | mem.after_first_page | MB | 22.0 | 22.9 | 22.9 | 6% | 5 × 1 | | | | mem.after_opens | MB | 99.7 | 119 | 119 | 48% | 5 × 1 | p95 ≤ 300 | ok | | mem.after_search | MB | 121 | 131 | 131 | 11% | 5 × 1 | | | | mem.idle | MB | 16.7 | 17.0 | 17.0 | 3% | 5 × 1 | p95 ≤ 64 | ok | | mem.peak | MB | 137 | 145 | 145 | 8% | 5 × 1 | p95 ≤ 256 | ok | | open.api_get | ms | 6.90 | 26.9 | 54.0 | 129% | 5 × 24 | p95 ≤ 50 | ok | | open.long_note | ms | 24.4 | 37.8 | 37.8 | 70% | 5 × 1 | p95 ≤ 250 | ok | | open.note | ms | 3.58 | 17.6 | 25.0 | 53% | 5 × 24 | p95 ≤ 15 | **over** | | search.catch_up | s | 2.04 | 2.04 | 46.1 | 101% | 5 × 3 | | | | search.first_query | ms | 48.9 | 73.2 | 73.2 | 96% | 5 × 1 | p95 ≤ 1000 | ok | | search.query | ms | 2.53 | 23.7 | 273 | 61% | 5 × 55 | p95 ≤ 100 | ok | | shutdown | ms | 113 | 129 | 129 | 19% | 5 × 1 | p95 ≤ 1000 | ok | | startup.healthz | ms | 109 | 124 | 124 | 32% | 5 × 1 | p95 ≤ 300 | ok | | storm.converge | ms | 178 | 225 | 225 | 31% | 5 × 1 | p95 ≤ 2000 | ok | | storm.disk_written | MB | 40.9 | 53.4 | 53.4 | 32% | 5 × 1 | p95 ≤ 50 | over target | | storm.dropped_clients | count | 0.00 | 0.00 | 0.00 | 0% | 5 × 1 | p95 ≤ 0 | ok | | storm.edits_per_s | edits/s | 5660 | 5877 | 5877 | 53% | 5 × 1 | p50 ≥ 1000 | ok | | storm.outside_edits | count | 4.00 | 7.00 | 7.00 | 75% | 5 × 1 | | | | storm.save_ack | ms | 4.65 | 10.7 | 117 | 70% | 5 × 10000 | p95 ≤ 150 | ok | | storm.typing | s | 1.77 | 3.47 | 3.47 | 100% | 5 × 1 | | | | sync.durable_write | ms | 11.9 | 18.3 | 240 | 63% | 5 × 30 | | | | sync.round_trip | ms | 0.28 | 0.36 | 4.49 | 46% | 5 × 200 | p95 ≤ 10 | ok | | sync.save_ack | ms | 2.61 | 5.00 | 26.6 | 40% | 5 × 200 | p95 ≤ 40 | ok | | trash.delete | ms | 52.9 | 109 | 207 | 26% | 5 × 30 | | | | trash.forget | ms | 6.26 | 10.3 | 81.2 | 47% | 5 × 30 | | | | trash.restore | ms | 124 | 195 | 261 | 25% | 5 × 30 | | | | uploads.response | ms | 98.2 | 150 | 379 | 66% | 5 × 20 | | | | uploads.round_trip | ms | 1.09 | 1.58 | 7.02 | 22% | 5 × 200 | | | | uploads.save_ack | ms | 3.43 | 7.59 | 64.9 | 65% | 5 × 200 | | | Gate output verbatim: ```text over target (not gated yet): 100000 notes: storm.disk_written p95 53.4 > 50 over budget: 100000 notes: idle.rss p95 101 > 100 over budget: 100000 notes: open.note p95 17.6 > 15 process exit=1 ``` Binary and budget SHA-256: ```json { "calternal": "5217fd5d26b701059cf7e27c8c3a3a9e39f1568c7a16b3e47a09f03dd2fc68a9", "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e", "tasks-bench": "fbafb2a5aa6081b347ec5b4c7082ba3d264b4f0749c62a0b0065a1fbf5411e07", "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d" } ```
Author
Owner

First report at 30f65caf found 100k idle RSS 101.2421875 MB, above the unchanged 100 MB budget. Startup passed at 103.0548 ms (10k) and 124.030435 ms (100k); idle CPU and wakeups were zero. Known open.note remains over at 17.608797 ms. Full report and gates are retained in comments 68984/68985. I stopped only the recorded PID of my own driver after its current 10k task child finished with exit status 0, before it could start more repetitions. All of this attempt’s fixture Homes and state are deleted.

The completed 10k task comparison passed all five gates, with 30 successful internal cache drops and cold growth 2.6819931549055687%. Gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0

I am removing duplicate per-inode watch bookkeeping while keeping the resolver, watch coverage and event policy unchanged, then rebuilding and rerunning the required three reports at each size. The failed attempt remains evidence.

First report at 30f65caf found 100k idle RSS 101.2421875 MB, above the unchanged 100 MB budget. Startup passed at 103.0548 ms (10k) and 124.030435 ms (100k); idle CPU and wakeups were zero. Known open.note remains over at 17.608797 ms. Full report and gates are retained in comments 68984/68985. I stopped only the recorded PID of my own driver after its current 10k task child finished with exit status 0, before it could start more repetitions. All of this attempt’s fixture Homes and state are deleted. The completed 10k task comparison passed all five gates, with 30 successful internal cache drops and cold growth 2.6819931549055687%. Gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ``` I am removing duplicate per-inode watch bookkeeping while keeping the resolver, watch coverage and event policy unchanged, then rebuilding and rerunning the required three reports at each size. The failed attempt remains evidence.
Author
Owner

RSS follow-up: the inode registry duplicated an Arc already retained by the event index. The registry now stores only the watch token, and checks the selected native path plus inode identity in that event index. This removes 16 bytes per hash bucket on x86_64, about 2 MiB at 100k entries, without reducing coverage or adding scans. The existing alias-removal/move regression still checks the selected event name and then writes through an outside hard link; its private introspection now reads the event index rather than a removed field. All assertions remain. The first compile correctly caught those two stale test field references; they were adapted and the full workspace gate is running again.

The completed first-attempt 10k comparison had child-tag p95 2.949991 ms and cold growth 2.6819931549055687%, with all five gates passing. Its full raw measurements are retained here:

{
  "cold_index_ms": {
    "cache_mode": "dropped",
    "endpoint": "shutdown, empty WAL, sync -f complete",
    "growth_pct": 2.6819931549055687,
    "plain": 1885.392545,
    "plain_ready_ms": 1840.9286419999999,
    "plain_runs": [
      1918.679375,
      1975.507072,
      1871.52323,
      1651.481826,
      1801.6955050000001,
      1930.6449140000002,
      2122.462425,
      1810.864619,
      1924.127985,
      1885.392545,
      2232.612097,
      1849.040778,
      1843.761403,
      2351.724169,
      1617.153063
    ],
    "plain_samples": [
      {
        "db_bytes_ready": 29241344,
        "ready_ms": 1795.340371,
        "settled_ms": 1918.679375,
        "wal_bytes_ready": 30722872
      },
      {
        "db_bytes_ready": 29216768,
        "ready_ms": 1866.612935,
        "settled_ms": 1975.507072,
        "wal_bytes_ready": 31089552
      },
      {
        "db_bytes_ready": 29237248,
        "ready_ms": 1840.9286419999999,
        "settled_ms": 1871.52323,
        "wal_bytes_ready": 30747592
      },
      {
        "db_bytes_ready": 29265920,
        "ready_ms": 1619.264085,
        "settled_ms": 1651.481826,
        "wal_bytes_ready": 30817632
      },
      {
        "db_bytes_ready": 29229056,
        "ready_ms": 1768.665857,
        "settled_ms": 1801.6955050000001,
        "wal_bytes_ready": 30900032
      },
      {
        "db_bytes_ready": 29261824,
        "ready_ms": 1883.866955,
        "settled_ms": 1930.6449140000002,
        "wal_bytes_ready": 30867072
      },
      {
        "db_bytes_ready": 29212672,
        "ready_ms": 2044.628661,
        "settled_ms": 2122.462425,
        "wal_bytes_ready": 31068952
      },
      {
        "db_bytes_ready": 29229056,
        "ready_ms": 1778.101443,
        "settled_ms": 1810.864619,
        "wal_bytes_ready": 31073072
      },
      {
        "db_bytes_ready": 29245440,
        "ready_ms": 1892.938117,
        "settled_ms": 1924.127985,
        "wal_bytes_ready": 31031872
      },
      {
        "db_bytes_ready": 29229056,
        "ready_ms": 1852.5544360000001,
        "settled_ms": 1885.392545,
        "wal_bytes_ready": 30747592
      },
      {
        "db_bytes_ready": 29233152,
        "ready_ms": 2189.070353,
        "settled_ms": 2232.612097,
        "wal_bytes_ready": 31147232
      },
      {
        "db_bytes_ready": 29208576,
        "ready_ms": 1801.798679,
        "settled_ms": 1849.040778,
        "wal_bytes_ready": 30858832
      },
      {
        "db_bytes_ready": 29229056,
        "ready_ms": 1780.473841,
        "settled_ms": 1843.761403,
        "wal_bytes_ready": 31143112
      },
      {
        "db_bytes_ready": 29237248,
        "ready_ms": 2318.993855,
        "settled_ms": 2351.724169,
        "wal_bytes_ready": 31167832
      },
      {
        "db_bytes_ready": 29237248,
        "ready_ms": 1584.663909,
        "settled_ms": 1617.153063,
        "wal_bytes_ready": 30706392
      }
    ],
    "tasks": 1935.9586439999998,
    "tasks_ready_ms": 1853.581856,
    "tasks_runs": [
      1320.354194,
      2749.382454,
      1886.507234,
      1911.181528,
      2493.6845019999996,
      1809.0361320000002,
      1886.044068,
      2056.354726,
      1935.9586439999998,
      1893.352244,
      2058.248587,
      2022.941249,
      2050.808523,
      4219.759316000001,
      1765.00017
    ],
    "tasks_samples": [
      {
        "db_bytes_ready": 32043008,
        "ready_ms": 1277.2745940000002,
        "settled_ms": 1320.354194,
        "wal_bytes_ready": 33887032
      },
      {
        "db_bytes_ready": 32055296,
        "ready_ms": 2709.666012,
        "settled_ms": 2749.382454,
        "wal_bytes_ready": 33792272
      },
      {
        "db_bytes_ready": 32038912,
        "ready_ms": 1853.158833,
        "settled_ms": 1886.507234,
        "wal_bytes_ready": 33833472
      },
      {
        "db_bytes_ready": 32030720,
        "ready_ms": 1819.469976,
        "settled_ms": 1911.181528,
        "wal_bytes_ready": 34274312
      },
      {
        "db_bytes_ready": 32063488,
        "ready_ms": 2448.068394,
        "settled_ms": 2493.6845019999996,
        "wal_bytes_ready": 34455592
      },
      {
        "db_bytes_ready": 32022528,
        "ready_ms": 1775.3555159999999,
        "settled_ms": 1809.0361320000002,
        "wal_bytes_ready": 34022992
      },
      {
        "db_bytes_ready": 32034816,
        "ready_ms": 1846.095433,
        "settled_ms": 1886.044068,
        "wal_bytes_ready": 34076552
      },
      {
        "db_bytes_ready": 32047104,
        "ready_ms": 2023.358906,
        "settled_ms": 2056.354726,
        "wal_bytes_ready": 34006512
      },
      {
        "db_bytes_ready": 32055296,
        "ready_ms": 1853.581856,
        "settled_ms": 1935.9586439999998,
        "wal_bytes_ready": 33788152
      },
      {
        "db_bytes_ready": 32051200,
        "ready_ms": 1835.607393,
        "settled_ms": 1893.352244,
        "wal_bytes_ready": 34060072
      },
      {
        "db_bytes_ready": 32018432,
        "ready_ms": 1958.464013,
        "settled_ms": 2058.248587,
        "wal_bytes_ready": 34344352
      },
      {
        "db_bytes_ready": 32038912,
        "ready_ms": 1906.2522060000001,
        "settled_ms": 2022.941249,
        "wal_bytes_ready": 34018872
      },
      {
        "db_bytes_ready": 32026624,
        "ready_ms": 1887.2125400000002,
        "settled_ms": 2050.808523,
        "wal_bytes_ready": 34529752
      },
      {
        "db_bytes_ready": 32055296,
        "ready_ms": 4165.3522299999995,
        "settled_ms": 4219.759316000001,
        "wal_bytes_ready": 34224872
      },
      {
        "db_bytes_ready": 32051200,
        "ready_ms": 1708.2953870000001,
        "settled_ms": 1765.00017,
        "wal_bytes_ready": 34022992
      }
    ]
  },
  "describe_ms": {
    "pass": {
      "max": 0.42499299999999995,
      "n": 20000,
      "p50": 0.003016,
      "p95": 0.014085,
      "p99": 0.034955
    },
    "pass_and_rows": {
      "max": 0.55623,
      "n": 20000,
      "p50": 0.012704,
      "p95": 0.034214,
      "p99": 0.056096
    }
  },
  "list_ms": {
    "anytime": {
      "matching": 868,
      "max": 2.9818610000000003,
      "n": 200,
      "p50": 1.986862,
      "p95": 2.293826,
      "p99": 2.569821
    },
    "anytime_by_child_tag": {
      "matching": 886,
      "max": 3.142962,
      "n": 200,
      "p50": 2.561415,
      "p95": 2.949991,
      "p99": 3.096334
    },
    "counts": {
      "max": 0.359031,
      "n": 200,
      "p50": 0.270886,
      "p95": 0.316571,
      "p99": 0.339564
    },
    "someday": {
      "matching": 822,
      "max": 3.106182,
      "n": 200,
      "p50": 1.994827,
      "p95": 2.389955,
      "p99": 2.7224060000000003
    },
    "tag": {
      "matching": 809,
      "max": 4.19177,
      "n": 200,
      "p50": 2.798267,
      "p95": 3.398479,
      "p99": 3.776625
    },
    "today": {
      "matching": 1044,
      "max": 2.818716,
      "n": 200,
      "p50": 2.279989,
      "p95": 2.637006,
      "p99": 2.7352600000000002
    },
    "today_by_priority": {
      "matching": 1044,
      "max": 7.986198999999999,
      "n": 200,
      "p50": 2.4448980000000002,
      "p95": 3.16394,
      "p99": 4.711221
    },
    "untracked": {
      "max": 1.256417,
      "n": 200,
      "p50": 0.811616,
      "p95": 0.99007,
      "p99": 1.156701
    },
    "upcoming": {
      "matching": 1513,
      "max": 3.1811830000000003,
      "n": 200,
      "p50": 2.471106,
      "p95": 2.862168,
      "p99": 3.000736
    }
  },
  "notes": 10000,
  "tasks": 10000,
  "write_ms": {
    "first_touch": {
      "max": 22.191989,
      "n": 60,
      "p50": 7.0477170000000005,
      "p95": 10.744994,
      "p99": 11.645014999999999
    },
    "warm": {
      "max": 46.835239,
      "n": 2340,
      "p50": 3.7416110000000002,
      "p95": 7.632179,
      "p99": 26.147668999999997
    }
  }
}
RSS follow-up: the inode registry duplicated an Arc<Path> already retained by the event index. The registry now stores only the watch token, and checks the selected native path plus inode identity in that event index. This removes 16 bytes per hash bucket on x86_64, about 2 MiB at 100k entries, without reducing coverage or adding scans. The existing alias-removal/move regression still checks the selected event name and then writes through an outside hard link; its private introspection now reads the event index rather than a removed field. All assertions remain. The first compile correctly caught those two stale test field references; they were adapted and the full workspace gate is running again. The completed first-attempt 10k comparison had child-tag p95 2.949991 ms and cold growth 2.6819931549055687%, with all five gates passing. Its full raw measurements are retained here: ```json { "cold_index_ms": { "cache_mode": "dropped", "endpoint": "shutdown, empty WAL, sync -f complete", "growth_pct": 2.6819931549055687, "plain": 1885.392545, "plain_ready_ms": 1840.9286419999999, "plain_runs": [ 1918.679375, 1975.507072, 1871.52323, 1651.481826, 1801.6955050000001, 1930.6449140000002, 2122.462425, 1810.864619, 1924.127985, 1885.392545, 2232.612097, 1849.040778, 1843.761403, 2351.724169, 1617.153063 ], "plain_samples": [ { "db_bytes_ready": 29241344, "ready_ms": 1795.340371, "settled_ms": 1918.679375, "wal_bytes_ready": 30722872 }, { "db_bytes_ready": 29216768, "ready_ms": 1866.612935, "settled_ms": 1975.507072, "wal_bytes_ready": 31089552 }, { "db_bytes_ready": 29237248, "ready_ms": 1840.9286419999999, "settled_ms": 1871.52323, "wal_bytes_ready": 30747592 }, { "db_bytes_ready": 29265920, "ready_ms": 1619.264085, "settled_ms": 1651.481826, "wal_bytes_ready": 30817632 }, { "db_bytes_ready": 29229056, "ready_ms": 1768.665857, "settled_ms": 1801.6955050000001, "wal_bytes_ready": 30900032 }, { "db_bytes_ready": 29261824, "ready_ms": 1883.866955, "settled_ms": 1930.6449140000002, "wal_bytes_ready": 30867072 }, { "db_bytes_ready": 29212672, "ready_ms": 2044.628661, "settled_ms": 2122.462425, "wal_bytes_ready": 31068952 }, { "db_bytes_ready": 29229056, "ready_ms": 1778.101443, "settled_ms": 1810.864619, "wal_bytes_ready": 31073072 }, { "db_bytes_ready": 29245440, "ready_ms": 1892.938117, "settled_ms": 1924.127985, "wal_bytes_ready": 31031872 }, { "db_bytes_ready": 29229056, "ready_ms": 1852.5544360000001, "settled_ms": 1885.392545, "wal_bytes_ready": 30747592 }, { "db_bytes_ready": 29233152, "ready_ms": 2189.070353, "settled_ms": 2232.612097, "wal_bytes_ready": 31147232 }, { "db_bytes_ready": 29208576, "ready_ms": 1801.798679, "settled_ms": 1849.040778, "wal_bytes_ready": 30858832 }, { "db_bytes_ready": 29229056, "ready_ms": 1780.473841, "settled_ms": 1843.761403, "wal_bytes_ready": 31143112 }, { "db_bytes_ready": 29237248, "ready_ms": 2318.993855, "settled_ms": 2351.724169, "wal_bytes_ready": 31167832 }, { "db_bytes_ready": 29237248, "ready_ms": 1584.663909, "settled_ms": 1617.153063, "wal_bytes_ready": 30706392 } ], "tasks": 1935.9586439999998, "tasks_ready_ms": 1853.581856, "tasks_runs": [ 1320.354194, 2749.382454, 1886.507234, 1911.181528, 2493.6845019999996, 1809.0361320000002, 1886.044068, 2056.354726, 1935.9586439999998, 1893.352244, 2058.248587, 2022.941249, 2050.808523, 4219.759316000001, 1765.00017 ], "tasks_samples": [ { "db_bytes_ready": 32043008, "ready_ms": 1277.2745940000002, "settled_ms": 1320.354194, "wal_bytes_ready": 33887032 }, { "db_bytes_ready": 32055296, "ready_ms": 2709.666012, "settled_ms": 2749.382454, "wal_bytes_ready": 33792272 }, { "db_bytes_ready": 32038912, "ready_ms": 1853.158833, "settled_ms": 1886.507234, "wal_bytes_ready": 33833472 }, { "db_bytes_ready": 32030720, "ready_ms": 1819.469976, "settled_ms": 1911.181528, "wal_bytes_ready": 34274312 }, { "db_bytes_ready": 32063488, "ready_ms": 2448.068394, "settled_ms": 2493.6845019999996, "wal_bytes_ready": 34455592 }, { "db_bytes_ready": 32022528, "ready_ms": 1775.3555159999999, "settled_ms": 1809.0361320000002, "wal_bytes_ready": 34022992 }, { "db_bytes_ready": 32034816, "ready_ms": 1846.095433, "settled_ms": 1886.044068, "wal_bytes_ready": 34076552 }, { "db_bytes_ready": 32047104, "ready_ms": 2023.358906, "settled_ms": 2056.354726, "wal_bytes_ready": 34006512 }, { "db_bytes_ready": 32055296, "ready_ms": 1853.581856, "settled_ms": 1935.9586439999998, "wal_bytes_ready": 33788152 }, { "db_bytes_ready": 32051200, "ready_ms": 1835.607393, "settled_ms": 1893.352244, "wal_bytes_ready": 34060072 }, { "db_bytes_ready": 32018432, "ready_ms": 1958.464013, "settled_ms": 2058.248587, "wal_bytes_ready": 34344352 }, { "db_bytes_ready": 32038912, "ready_ms": 1906.2522060000001, "settled_ms": 2022.941249, "wal_bytes_ready": 34018872 }, { "db_bytes_ready": 32026624, "ready_ms": 1887.2125400000002, "settled_ms": 2050.808523, "wal_bytes_ready": 34529752 }, { "db_bytes_ready": 32055296, "ready_ms": 4165.3522299999995, "settled_ms": 4219.759316000001, "wal_bytes_ready": 34224872 }, { "db_bytes_ready": 32051200, "ready_ms": 1708.2953870000001, "settled_ms": 1765.00017, "wal_bytes_ready": 34022992 } ] }, "describe_ms": { "pass": { "max": 0.42499299999999995, "n": 20000, "p50": 0.003016, "p95": 0.014085, "p99": 0.034955 }, "pass_and_rows": { "max": 0.55623, "n": 20000, "p50": 0.012704, "p95": 0.034214, "p99": 0.056096 } }, "list_ms": { "anytime": { "matching": 868, "max": 2.9818610000000003, "n": 200, "p50": 1.986862, "p95": 2.293826, "p99": 2.569821 }, "anytime_by_child_tag": { "matching": 886, "max": 3.142962, "n": 200, "p50": 2.561415, "p95": 2.949991, "p99": 3.096334 }, "counts": { "max": 0.359031, "n": 200, "p50": 0.270886, "p95": 0.316571, "p99": 0.339564 }, "someday": { "matching": 822, "max": 3.106182, "n": 200, "p50": 1.994827, "p95": 2.389955, "p99": 2.7224060000000003 }, "tag": { "matching": 809, "max": 4.19177, "n": 200, "p50": 2.798267, "p95": 3.398479, "p99": 3.776625 }, "today": { "matching": 1044, "max": 2.818716, "n": 200, "p50": 2.279989, "p95": 2.637006, "p99": 2.7352600000000002 }, "today_by_priority": { "matching": 1044, "max": 7.986198999999999, "n": 200, "p50": 2.4448980000000002, "p95": 3.16394, "p99": 4.711221 }, "untracked": { "max": 1.256417, "n": 200, "p50": 0.811616, "p95": 0.99007, "p99": 1.156701 }, "upcoming": { "matching": 1513, "max": 3.1811830000000003, "n": 200, "p50": 2.471106, "p95": 2.862168, "p99": 3.000736 } }, "notes": 10000, "tasks": 10000, "write_ms": { "first_touch": { "max": 22.191989, "n": 60, "p50": 7.0477170000000005, "p95": 10.744994, "p99": 11.645014999999999 }, "warm": { "max": 46.835239, "n": 2340, "p50": 3.7416110000000002, "p95": 7.632179, "p99": 26.147668999999997 } } } ```
Author
Owner

Full workspace tests after the RSS correction, head d23e80b9. 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try again; no #757 rerun. Output verbatim, part 1/4:

   Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio)
   Compiling calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server)
   Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes)
   Compiling calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments)
   Compiling calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops)
   Compiling calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth)
   Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks)
   Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions)
   Compiling calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily)
   Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0)
   Compiling calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs)
   Compiling calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal)
   Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf)
    Finished `test` profile [unoptimized + debuginfo] target(s) in 31.49s
     Running unittests src/main.rs (target/debug/deps/calternal-a3b50c16e6a6ab3c)

running 32 tests
test admin::tests::a_stop_sent_before_subscribing_is_still_seen ... ok
test admin::tests::an_active_request_gets_a_graceful_shutdown_window ... ok
test args::tests::defaults_and_flags ... ok
test args::tests::dev_user_never_on_a_public_address ... ok
test args::tests::fix_commands ... ok
test args::tests::migrate_v0 ... ok
test args::tests::origin_defaults_to_the_local_port ... ok
test args::tests::setup_and_re_pair_are_explicit ... ok
test args::tests::state_defaults_to_resolved_data_and_flags_override_environment ... ok
test args::tests::user_create ... ok
test admin::tests::shutdown_stops_a_client_waiting_on_a_partial_request ... ok
test args::tests::web_folder ... ok
test args::tests::user_recover ... ok
test admin::tests::a_restart_waits_out_an_admin_request_longer_than_ten_seconds ... ok
test isolation::bob_cannot_reach_alices_attachments ... ok
test isolation::in_process_server_shutdown_releases_both_roots_200x_under_load ... ignored, stress gate; run explicitly during release validation
test isolation::people::backdrops_spend_the_same_counter_as_small_attachments ... ok
test isolation::contacts_and_tasks_in_one_home_keep_their_own_members ... ok
test isolation::people::duplicate_upload_at_quota_must_not_spend_bytes_twice ... ok
test isolation::people::normal_token_failures_do_not_log_or_persist_plaintext ... ok
test isolation::people::real_upload_storm_notes_trash_restore_and_delete_usage ... ok
test isolation::bob_cannot_join_alices_note_room ... ok
test isolation::people_actions_hide_real_ids_from_members_other_users_and_anonymous_callers ... ok
test isolation::quota_refuses_large_and_small_uploads_while_notes_still_save ... ok
test isolation::bob_reaches_nothing_of_alices_through_any_action ... ok
test isolation::split_storage_keeps_originals_and_databases_on_their_disks ... ok
test plugins::tests::contract_matches_the_server ... ok
test isolation::renaming_a_task_retargets_task_and_contact_links_once ... ok
test shutdown_io::tests::shutdown_finishes_an_idle_read_and_keeps_response_writes_open ... ok
test shutdown_io::tests::shutdown_bounds_response_writes_to_a_peer_that_stops_reading ... ok
test isolation::people::every_action_obeys_person_visibility ... ok
test isolation::randomized_home_shutdown_releases_both_roots ... ok

test result: ok. 31 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.10s

     Running tests/attachments_crash.rs (target/debug/deps/attachments_crash-cd2bbef03748dfba)

running 2 tests
test kill_nine_mid_upload_leaves_nothing_half_written ... ok
test a_big_upload_streams_in_bounded_memory ... ok

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

     Running tests/contacts_live.rs (target/debug/deps/contacts_live-75709d75740a5aef)

running 2 tests
test a_phone_renames_a_contact_while_someone_types_in_a_linking_note ... ok
test a_live_h1_collision_keeps_contact_and_incoming_link_identity ... ok

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

     Running tests/fix_tz_live.rs (target/debug/deps/fix_tz_live-0737e923ed502e77)

running 2 tests
test fix_without_a_running_server_says_so ... ok
test strip_tz_markers_on_a_live_home_with_a_client_typing ... ok

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

     Running tests/notes_crash.rs (target/debug/deps/notes_crash-353c659c2c8c58ef)

running 3 tests
test kill_nine_mid_tag_rename_renames_each_tag_once ... ok
test kill_nine_mid_append_on_a_long_note ... ok
test kill_nine_never_loses_or_doubles ... ok

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

     Running tests/notes_crash_typing.rs (target/debug/deps/notes_crash_typing-a3186d5f751d22cc)

running 1 test
test kill_nine_while_people_type_loses_and_doubles_nothing ... ok

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

     Running tests/notes_live.rs (target/debug/deps/notes_live-23dad727506cebb5)

running 2 tests
test joining_a_missing_note_fails_politely ... ok
test type_over_the_websocket_and_read_it_back ... ok

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

     Running tests/prefs_live.rs (target/debug/deps/prefs_live-2a45e14c9a3246f1)

running 1 test
test preferences_are_saved_checked_and_kept ... ok

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

     Running tests/search_live.rs (target/debug/deps/search_live-f7802571dcef0e22)

running 2 tests
test perf_live_empty_search_under_one_second ... ignored, live empty-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test notes_from_everywhere_are_found ... ok

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

     Running tests/startup.rs (target/debug/deps/startup-d7666ef4a67395d8)

running 6 tests
test perf_startup_under_500ms ... ignored, startup latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test refuses_dev_user_on_a_public_address ... ok
test refuses_plain_http_on_a_public_origin ... ok
test recover_only_knows_real_people ... ok
test a_new_server_prints_a_setup_token ... ok
test answers_after_launch ... ok

test result: ok. 5 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.05s

     Running tests/startup_quota.rs (target/debug/deps/startup_quota-ff7d3c3723709dd3)

running 1 test
test first_upload_after_healthz_enforces_existing_home_usage ... ok

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

     Running tests/storage_startup.rs (target/debug/deps/storage_startup-b157873ab6d847a5)

running 11 tests
test create_refuses_unpaired_notes_or_databases_before_creating_other_root ... ok
test a_lock_held_past_the_longest_grace_still_fails_startup ... ok
test legacy_history_read_only_and_invalid_state_are_refused ... ok
test both_missing_markers_with_existing_split_data_require_confirmed_re_pair ... ok
test original_storage_startup_scenario_repeats_100x_under_load ... ignored, stress gate; run explicitly during release validation
test missing_home_refuses_without_creating_directory_or_lock ... ok
test missing_state_never_recreates_databases_even_with_create ... ok
test startup_waits_for_a_previous_server_to_release_both_roots ... ok
test single_root_upgrade_backup_split_cache_delete_and_rollback ... ok
test roots_must_keep_their_persistent_partner_and_admin_must_confirm ... ok
test both_roots_remain_exclusively_locked ... ok

test result: ok. 10 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 10.06s

     Running unittests src/lib.rs (target/debug/deps/calternal_attachments-d58f6af211aebaca)

running 22 tests
test serve::tests::dispositions_quote_safely ... ok
test serve::tests::only_plain_visible_paths_are_served ... ok
test serve::tests::ranges ... ok
test tests::http::a_connection_that_breaks_off_leaves_nothing ... ok
test tests::http::an_upload_lands_in_its_dated_folder_and_is_served_back ... ok
test tests::http::a_retry_with_the_same_key_never_makes_a_second_copy ... ok
test tests::http::check_finds_only_your_own_files ... ok
test tests::http::paths_that_climb_out_of_the_home_are_not_found ... ok
test tests::http::review_754b_upload_preserves_raw_names_and_real_replacement_character_collisions ... ok
test tests::http::review_754b_utf8_case_and_normalization_collision_behavior_is_preserved ... ok
test tests::http::the_sweep_removes_what_a_crash_left_and_spares_live_uploads ... ok
test tests::http::names_can_not_steer_where_a_file_goes ... ok
test tests::http::uploads_need_a_session_our_page_and_a_key ... ok
test tests::sniffing::days_are_strict ... ok
test tests::sniffing::invalid_utf8_names_do_not_claim_replacement_character_names ... ok
test tests::sniffing::names_are_kept_but_made_safe ... ok
test tests::sniffing::pictures_and_videos_go_to_photos ... ok
test tests::sniffing::text_types_come_from_the_extension_and_html_never_runs ... ok
test tests::sniffing::the_name_never_decides_a_binary_type ... ok
test tests::http::the_limit_holds_while_streaming_without_a_length ... ok
test tests::http::the_same_file_again_says_already_uploaded_and_keeps_one_copy ... ok
test tests::http::unsafe_types_are_downloads_with_a_strict_policy ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_auth-c6ffb9bdc96505f7)

running 30 tests
test config::tests::origins ... ok
test db::tests::a_version_1_database_gets_passkey_names ... ok
test db::tests::existing_database_keeps_people_credentials_and_sessions ... ok
test http::cookie_tests::session_cookie_is_host_only_and_secure ... ok
test db::tests::opens_twice_and_keeps_schema ... ok
test http::proxy_tests::forwarding_stops_at_first_untrusted_hop_and_rejects_malformed_chains ... ok
test invite_key::tests::lookup_uses_a_separate_derived_key_and_depends_on_the_server_key ... ok
test invite_redeem::tests::expiry_and_clock_rollback_use_the_same_validation_path ... ok
test invite_redeem::tests::invalid_invite_classes_perform_one_lookup_and_one_secret_comparison ... ok
test invite_redeem::tests::invalid_invites_do_not_reveal_name_conflicts ... ok
test limit::reliability_tests::backoff_expires_is_capped_and_refusals_do_not_extend_it ... ok
test limit::reliability_tests::buckets_are_independent_and_bounded ... ok
test invite_key::tests::key_round_trips_but_modified_ciphertext_and_another_id_fail ... ok
test ceremony::tests::anonymous_pool_stays_bounded_and_evicts_oldest ... ok
test ceremony::tests::full_pool_refuses_foreign_source_without_discarding_live_prompt ... ok
test passkeys::tests::ids_round_trip ... ok
test passkeys::tests::names_are_trimmed_short_and_never_empty ... ok
test limit::reliability_tests::target_capacity_preserves_live_budgets_and_evicts_only_oldest_expired ... ok
test session::tests::names_are_cleaned ... ok
test limit::reliability_tests::full_map_evicts_least_recent_without_refusing_new_sources ... ok
test setup::tests::names ... ok
test setup::tests::names_reject_invisible_and_normalize_nfc ... ok
test quota::independent_review_755::second_upload_during_registration_must_count_outside_growth ... ok
test setup::tests::recover_needs_a_known_person ... ok
test setup::tests::usernames ... ok
test token::tests::junk_is_not_a_token ... ok
test token::tests::setup_tokens_round_trip_through_pasting ... ok
test setup::tests::recovery_requires_exact_username_or_uuid_never_display_name ... ok
test setup::tests::cli_creation_refuses_admin_name_confusables ... ok
test limit::reliability_tests::source_churn_cannot_reset_target_budget ... ok

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

     Running tests/abuse.rs (target/debug/deps/abuse-55dc96433ab57c65)

running 12 tests
test bad_json_and_unknown_fields_are_refused ... ok
test forged_sessions_get_nowhere ... ok
test junk_setup_tokens_are_refused_then_rate_limited ... ok
test duplicate_session_cookies_never_choose_an_identity ... ok
test anonymous_prompt_flood_preserves_login_setup_and_add ... ok
test login_source_limit_does_not_block_another_client ... ok
test non_json_requests_are_refused ... ok
test nothing_about_the_server_leaks_before_sign_in ... ok
test one_source_cannot_lock_out_another_and_cannot_spoof_forwarding ... ok
test oversized_bodies_are_refused ... ok
test other_sites_cannot_act_for_you ... ok
test garbage_credentials_never_crash ... ok

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

     Running tests/create.rs (target/debug/deps/create-073bf952f17a5ede)

running 6 tests
test an_earlier_first_owner_token_stops_working ... ok
test an_expired_enrolment_token_is_refused ... ok
test a_created_person_enrolls_their_first_passkey_and_is_the_same_person ... ok
test names_must_be_usable_and_unique ... ok
test nothing_about_the_person_leaks_before_sign_in ... ok
test an_enrolment_token_works_exactly_once_under_a_storm ... ok

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

     Running tests/groups.rs (target/debug/deps/groups-90b4782e7dd6e580)

running 1 test
test shared_groups_control_visibility_and_managers_only_edit_local_members ... ok

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

     Running tests/host_cookies.rs (target/debug/deps/host_cookies-6b0c997d56c59693)

running 3 tests
test old_name_is_ignored_and_cleared_once_without_touching_host_session ... ok
test duplicate_host_headers_and_stale_requests_never_clear_new_session ... ok
test upgrading_schema_six_removes_cookie_state_and_keeps_passkeys ... ok

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

     Running tests/invites.rs (target/debug/deps/invites-e9c6f1bddf277840)

running 8 tests
test invite_admin_names_cannot_be_impersonated_and_failure_preserves_invite ... ok
test invite_finish_rechecks_admin_names_after_role_changes ... ok
test invite_redemption_joins_its_groups_and_other_inviters_cannot_copy_it ... ok
test invite_can_be_copied_after_restart_and_only_one_racing_passkey_wins ... ok
test losing_the_key_does_not_replace_it_and_invite_secrets_never_enter_action_history ... ok
test wrong_expired_used_and_revoked_invites_give_one_answer ... ok
test legacy_invite_indexes_upgrade_atomically_and_keep_copy_and_redemption ... ok
test invite_redemption_reaches_a_visible_admin_but_not_an_unrelated_member ... ok

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

     Running tests/isolation.rs (target/debug/deps/isolation-8f6869b624859b1e)

running 3 tests
test a_cookie_sent_from_another_sites_page_does_not_count ... ok
test devices_and_passkeys_of_another_person_are_not_found ... ok
test another_persons_passkey_prompt_cannot_be_used_or_cancelled ... ok

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

     Running tests/login.rs (target/debug/deps/login-869d6dadbd3d3382)

running 11 tests
test foreign_status_cannot_sign_the_browser_out ... ok
test bearer_tokens_work_like_cookies ... ok
test a_sign_in_answer_cannot_be_replayed ... ok
test an_unknown_passkey_is_refused ... ok
test sign_in_with_a_passkey_creates_a_new_installation ... ok
test logout_revokes_the_installation_and_rejects_live_cookies ... ok
test revoking_another_device_signs_it_out ... ok
test sign_out_ends_the_session_immediately ... ok
test signing_in_shows_up_live_on_another_device ... ok
test signing_out_shows_up_live_on_another_device ... ok
test sessions_expire_when_unused ... ok

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

     Running tests/migration.rs (target/debug/deps/migration-1accde5b0ec134b7)

running 1 test
test schema_two_copy_keeps_real_credentials_sessions_and_recovery ... ok

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

     Running tests/passkeys.rs (target/debug/deps/passkeys-15e16beb8d0367d6)

running 7 tests
test an_empty_name_is_refused_and_a_long_one_is_cut ... ok
test add_rename_and_remove_each_leave_a_journal_event ... ok
test adding_needs_a_sign_in_and_an_add_prompt_works_once ... ok
test a_removed_passkey_that_is_gone_or_unknown_is_not_found ... ok
test the_last_passkey_cannot_be_removed ... ok
test the_first_passkey_is_listed_with_the_device_it_was_made_on ... ok
test the_same_device_cannot_be_added_twice ... ok

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

     Running tests/people.rs (target/debug/deps/people-4e83322d17dda982)

running 4 tests
test first_owner_has_capabilities_and_cannot_demote_the_last_admin ... ok
test promotion_cannot_create_confusable_admin_names ... ok
test two_admins_racing_to_demote_themselves_leave_one_admin ... ok
test member_cannot_change_roles_and_new_capability_sets_work ... ok

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

     Running tests/quota_counter.rs (target/debug/deps/quota_counter-f48b0804a4693eb3)

running 4 tests
test perf_signin_during_large_recount_under_fifty_ms ... ignored, sign-in latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test small_uploads_spend_the_same_allowance_as_large_uploads ... ok
test health_reports_retained_storage_measurement_failures ... ok
test signin_finishes_before_a_large_recount ... ok

test result: ok. 3 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 4.67s

     Running tests/reliability_review.rs (target/debug/deps/reliability_review-fe810f4afa6e8922)

running 22 tests
test authentication_database_does_not_wait_for_general_blocking_workers ... ok
test anonymous_flood_must_not_evict_other_persons_prompt ... ok
test concurrent_quota_admissions_do_not_overspend ... ok
test crash_child_exit ... ignored
test default_twenty_mib_stream_boundary ... ok
test directory_moves_keep_child_accounting_and_deletes_correct ... ok
test counter_concurrent_mutations_drift_and_restart ... ok
test independent_login_latency_during_recount ... ignored, latency budget runs on the perf VM via perf/auth-latency-vm.sh
test ipv6_prefix_must_share_budget ... ok
test ipv6_rotation_must_not_lock_out_new_source ... ok
test directory_move_during_initial_recount_must_track_later_deletes ... ok
test names_normalization_recovery_and_invisibles ... ok
test perf_ipv6_source_rotation_under_fifty_five_seconds ... ignored, IPv6 source-churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test normalized_setup_token_must_share_target_budget ... ok
test restart_recovers_disk_update_missing_counter_notification ... ok
test repeated_bad_signatures_for_one_account_must_share_budget ... ok
test source_isolation_and_untrusted_forwarding ... ok
test slow_uploads_must_not_starve_authentication_blocking_pool ... ok
test trusted_proxy_uses_nearest_untrusted_hop ... ok
test streamed_slow_exact_over_abort_and_quota_replacement ... ok
test account_owner_can_sign_in_after_backoff_and_success_resets_failures ... ok
test independent_login_completes_before_recount ... ok

test result: ok. 19 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 1.74s

     Running tests/reliability_round3.rs (target/debug/deps/reliability_round3-9c5194112c2287db)

running 12 tests
test canonical_recovery_token_variants_share_one_target_without_spending_other_tokens ... ok
test fifty_slow_upload_attempts_preserve_full_signin_and_status ... ok
test attachment_and_backdrop_routes_share_caps_and_cancel_cleanup ... ok
test ipv4_mapped_v6_and_native_v4_share_budget_but_adjacent_prefix_does_not ... ok
test over_ten_thousand_distinct_source_buckets_still_admit_new_clients ... ok
test perf_signin_and_status_during_slow_uploads_under_fifty_ms ... ignored, sign-in and status latency budgets run on the perf VM via perf/ordinary-latency-vm.sh
test perf_source_bucket_churn_under_fifty_five_seconds ... ignored, source-bucket churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test rename_collision_and_replacement_keep_correct_usage ... ok
test setup_target_budget_survives_more_than_ten_thousand_sources ... ok
test idle_deadline_cleans_files_and_reopens_each_person_capacity ... ok
test attachment_slow_bodies_must_not_hold_all_general_blocking_workers ... ok
test maximum_account_backoff_releases_owner_despite_refused_retries has been running for over 60 seconds
test maximum_account_backoff_releases_owner_despite_refused_retries ... ok

test result: ok. 10 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 123.89s

     Running tests/security_regressions.rs (target/debug/deps/security_regressions-eafb2d2ddad42fa3)

running 15 tests
test concurrent_key_creation_publishes_one_complete_key ... ok
test eight_parallel_redeemers_create_exactly_one_account ... ok
test expiry_during_passkey_registration_consumes_nothing ... ok
test every_action_rejects_anonymous_expired_and_unprivileged_writes ... ok
test groups_manager_must_obey_single_person_visibility_rule ... ok
test invite_lookup_must_use_keyed_hash ... ok
test malformed_token_must_have_same_generic_response ... ok
test key_permissions_missing_corrupt_and_no_plaintext_history ... ok
test perf_invite_failure_timing_classes_within_ratio ... ignored, invite failure timing budget runs on the perf VM via perf/ordinary-latency-vm.sh
test new_modules_are_small_and_documented ... ok
test revoked_expired_used_and_wrong_fail_equally ... ok
test origin_dev_schema_migrates_idempotently_and_rolls_back_partial_failure ... ok
test two_admins_demoting_each_other_keep_one_manager ... ok
test quota_serializes_large_placements_and_tracks_delete_trash ... ok
test all_five_invite_failures_have_the_same_body_and_status ... ok

test result: ok. 14 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.17s

     Running tests/setup.rs (target/debug/deps/setup-012b11e547011a67)

running 8 tests
test a_restart_replaces_the_first_owner_token ... ok
test a_finished_prompt_cannot_be_replayed ... ok
test first_owner_needs_a_name ... ok
test first_owner_signs_up_with_the_printed_token ... ok
test a_token_works_exactly_once_under_a_storm ... ok
test session_cookie_is_locked_down ... ok
test recovery_adds_a_new_passkey_for_the_same_person ... ok
test an_expired_setup_token_is_refused ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_backdrops-9bb1b7445f355593)

running 25 tests
test tests::an_answer_that_is_not_a_picture_is_refused_and_not_kept ... ok
test tests::a_photo_unknown_to_us_is_looked_up ... ok
test tests::a_stricter_attachment_limit_also_bounds_backdrops ... ok
test tests::an_upload_is_private_to_the_person_who_made_it ... ok
test tests::an_upload_is_kept_once_and_served_back ... ok
test tests::changes_need_our_own_page_and_a_signed_in_person ... ok
test tests::picking_is_reported_to_unsplash_once ... ok
test tests::bad_ids_never_reach_the_disk_or_the_network ... ok
test tests::nobody_can_read_or_list_someone_elses_uploads ... ok
test tests::pictures_from_other_hosts_are_refused ... ok
test tests::pictures_are_proxied_cached_and_never_given_the_key ... ok
test tests::search_lists_photos_with_our_own_addresses_and_credit ... ok
test tests::storage_cache::split_cache_deletion_refetches_upstream_and_keeps_original_upload ... ok
test tests::the_real_client_sends_the_key_and_caps_the_size ... ok
test tests::the_real_client_speaks_https_to_unsplash ... ignored, needs the internet
test tests::the_same_search_is_answered_once ... ok
test tests::too_many_pixels_are_refused_but_files_within_the_byte_limit_work ... ok
test tests::unsplash_running_out_of_requests_is_a_plain_slow_down ... ok
test tests::uploads_are_checked_by_content_not_by_what_they_claim ... ok
test tests::without_a_key_photos_are_off_but_uploads_work ... ok
test uploads::reliability_tests::idle_upload_removes_temporary_file_and_releases_admission ... ok
test tests::backdrop_quota_refuses_new_files_and_releases_space_on_delete ... ok
test uploads::reliability_tests::upload_admission_is_bounded_and_cancellation_restores_capacity ... ok
test tests::the_cache_drops_the_oldest_files_past_its_cap ... ok
test tests::streaming_upload_stops_at_byte_limit_and_leaves_no_artifact ... ok

test result: ok. 24 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.05s

     Running unittests src/lib.rs (target/debug/deps/calternal_contacts-ee6c1c39ad0c7c23)

running 1 test
test note::related_links_tests::only_the_cards_related_group_names_related_people ... ok

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

     Running tests/apple.rs (target/debug/deps/apple-2e4be127f63ba73a)

running 4 tests
test apple_rewrite_keeps_canonical_extensions_and_takes_real_edits ... ok
test unchanged_duplicate_ungrouped_occurrences_merge ... ok
test client_deletion_requires_sent_field_and_uid_is_immutable ... ok
test unsent_note_changes_survive_and_concurrent_edits_return_history ... ok

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

     Running tests/break_codec.rs (target/debug/deps/break_codec-aafcfb31f8b66aed)

running 11 tests
test envelope_checks_and_original_copy_reject_ambiguous_or_edited_state ... ok
test escaped_separator_parity_keeps_component_and_list_boundaries ... ok
test bare_properties_and_ignored_parameter_properties_decode_the_same_values ... ok
test canonical_note_comparison_checks_every_byte_and_falls_back_for_local_sections ... ok
test folded_and_unfolded_utf8_lines_keep_values_and_their_original_bytes ... ok
test multiline_google_custom_labels_cannot_create_other_card_groups ... ok
test component_and_list_comparisons_preserve_empty_parts_and_noncanonical_escapes ... ok
test quoted_parameter_delimiters_and_value_colons_keep_their_meaning ... ok
test typed_reordering_and_value_tag_changes_use_the_exported_wire_projection ... ok
test mixed_rendered_values_keep_all_other_bytes_during_a_client_edit ... ok
test original_and_edited_note_snapshots_both_preserve_later_typed_edits ... ok

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

     Running tests/break_generated.rs (target/debug/deps/break_generated-820fb6d4d3d4733d)

running 9 tests
test fixed_seed_generated_shapes_include_every_reaudit_case ... ok
test arbitrary_wire_and_note_inputs_preserve_bytes_or_explain_rejection ... ok
test independent_vendor_shaped_cards_keep_foldings_metadata_and_unknowns ... ok
test generated_notes_shapes_and_repeated_fact_edits_round_trip ... ok
test synthetic_vendor_corpus_is_bidirectionally_byte_identical ... ok
test five_megabyte_notes_survive_both_conversions ... ok
test generated_valid_cards_and_messy_notes_keep_every_field ... ok
test megabyte_value_ten_thousand_visible_fields_and_ten_megabyte_photo ... ok
test ten_thousand_new_custom_labels_get_unique_groups_and_round_trip ... ok

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

     Running tests/break_inventory.rs (target/debug/deps/break_inventory-3574ff8515f5622c)

running 1 test
test every_inventory_property_survives_a_neighbour_edit ... ok

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

     Running tests/break_labels.rs (target/debug/deps/break_labels-2a15e9f3957048ff)

running 2 tests
test names_use_human_order_even_when_vendor_properties_are_reordered ... ok
test builtin_labels_show_the_words_on_the_phone_and_recover_original_codes ... ok

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

     Running tests/break_layout.rs (target/debug/deps/break_layout-c5075a452332b1c4)

running 27 tests
test a_phone_note_containing_h2_or_h1_round_trips ... ok
test ambiguous_simultaneous_colon_edit_returns_phone_group_and_history ... ok
test colon_label_renames_survive_a_following_client_edit ... ok
test colon_bearing_label_edits_change_only_the_label_and_value_edits_only_the_value ... ok
test company_and_department_edits_share_one_org_in_either_note_order ... ok
test duplicate_structured_name_parts_are_unrepresentable ... ok
test crlf_notes_preserve_original_escape_spelling_and_do_not_create_merge_conflicts ... ok
test colons_delimiters_and_unicode_keep_their_exact_wire_values ... ok
test first_list_ends_at_a_paragraph_and_second_list_stays_local ... ok
test entering_a_birthday_year_clears_the_apple_omit_year_flag ... ok
test later_notes_headings_are_phone_text ... ok
test flat_repeatable_lines_stay_and_are_reported ... ok
test empty_visible_properties_are_not_deleted_on_an_unchanged_round_trip ... ok
test missing_h1_explains_rejection_and_empty_card_is_allowed ... ok
test multiline_labels_never_turn_into_unreported_fields ... ok
test missing_wire_display_name_is_not_silently_created_by_a_round_trip ... ok
test multiple_unrepresentable_document_fields_explain_rejection ... ok
test multiple_edits_to_indistinguishable_occurrences_do_not_guess_hidden_parameters ... ok
test notes_heading_after_a_local_h1_owns_the_tail ... ok
test note_headings_and_crlf_do_not_change_plain_text ... ok
test org_hierarchy_is_one_fact_and_unchanged_components_stay_lossless ... ok
test tags_keep_list_boundaries_when_a_category_contains_comma_space ... ok
test unchanged_values_that_differ_only_by_trailing_spaces_keep_both_occurrences ... ok
test utf8_bom_is_document_framing ... ok
test unicode_names_keep_normalisation_scripts_direction_and_joiners ... ok
test one_property_edit_changes_only_its_original_logical_line ... ok
test markdown_whitespace_and_bullets_do_not_edit_the_phone ... ok

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

     Running tests/break_links.rs (target/debug/deps/break_links-1cfb864ce45a27c1)

running 4 tests
test a_colon_in_a_related_name_is_text_and_an_explicit_uri_stays_a_uri ... ok
test escaped_closing_brackets_inside_a_name_are_not_link_delimiters ... ok
test a_plain_name_that_looks_like_a_link_stays_that_name ... ok
test related_brackets_and_angle_brackets_are_valid_markdown_and_editable ... ok

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

     Running tests/break_merge.rs (target/debug/deps/break_merge-525543662f577ab1)

running 16 tests
test crlf_new_group_is_written_once_for_multiple_incoming_values ... ok
test additions_removals_values_and_labels_preserve_customised_note ... ok
test distinct_repeated_types_return_quiet_concurrent_edit_notice ... ok
test apple_reordering_churn_photo_and_dropped_extension_do_not_lose_local_edits ... ok
test dropped_extension_parameters_keep_their_order_and_do_not_conflict_with_local_values ... ok
test identical_visible_rows_keep_both_occurrences_during_noop_and_changed_merges ... ok
test distinct_ungrouped_types_merge_reorders_edits_additions_and_deletions ... ok
test phone_label_rename_replaces_local_value_edit ... ok
test phone_notes_with_headings_merge_successfully ... ok
test phone_note_deletion_does_not_reappear_as_an_empty_note_on_read ... ok
test simultaneous_grouped_phone_and_photo_additions_put_photo_before_card ... ok
test the_first_card_group_is_added_after_an_existing_photo ... ok
test local_label_renames_take_phone_deletes_or_value_edits ... ok
test related_links_with_custom_relative_targets_bind_to_the_original_person ... ok
test unchanged_repeated_ungrouped_properties_keep_occurrences ... ok
test same_line_concurrent_edits_and_deletes_take_phone_group ... ok

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

     Running tests/format3.rs (target/debug/deps/format3-08cc5a6dbc94328c)

running 21 tests
test ambiguous_single_fact_delete_and_edit_returns_all_previous_lines ... ok
test ambiguous_occurrence_replaces_only_its_group_and_returns_exact_old_lines ... ok
test colliding_colon_renderings_keep_occurrences_or_return_the_phone_group ... ok
test ambiguous_client_group_takes_phone_order_while_other_groups_merge ... ok
test department_hierarchy_is_one_fact_when_both_sides_edit_it ... ok
test equal_single_fact_values_still_bind_by_line_order_when_edited ... ok
test company_and_department_merge_as_separate_single_facts ... ok
test concurrent_org_additions_and_deletes_never_stop_sync ... ok
test indistinguishable_single_fact_deletion_returns_phone_group_and_history ... ok
test local_sections_above_notes_stay_local_and_below_become_phone_notes ... ok
test identical_syncs_do_not_repeat_a_phone_group_replacement_notice ... ok
test exact_client_occurrences_win_before_parameterless_identical_additions ... ok
test identical_repeatable_rows_return_history_instead_of_guessing_hidden_occurrences ... ok
test phone_notes_keep_headings_dividers_lists_and_all_blank_lines_exactly ... ok
test repeated_single_facts_typed_from_scratch_create_separate_properties ... ok
test org_deletions_use_unique_departments_or_return_every_ambiguous_fact ... ok
test repeated_company_conflict_keeps_independent_department_edits ... ok
test several_ambiguous_groups_report_each_previous_group_once ... ok
test repeated_single_facts_bind_edit_delete_and_multiple_edits_to_occurrences ... ok
test unique_values_anchor_client_deletions_even_when_extension_parameters_are_omitted ... ok
test unambiguous_repeated_client_edits_and_deletes_keep_other_occurrences ... ok

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

     Running tests/hostile.rs (target/debug/deps/hostile-2aa574927f8d261c)

running 10 tests
test ambiguous_sources_damaged_notes_and_line_injection_are_errors ... ok
test escapes_empty_values_caret_parameters_and_unknown_sequences ... ok
test malformed_lines_and_mixed_endings_survive_a_neighbor_edit ... ok
test folds_at_arbitrary_byte_boundaries_recover_utf8 ... ok
test arbitrary_note_text_never_panics ... ok
test arbitrary_bytes_never_panic_or_drop_a_byte ... ok
test random_unicode_fields_survive_edits ... ok
test ten_thousand_properties_keep_order_and_raw_lines ... ok
test random_repeated_grouped_properties_keep_their_inventory ... ok
test ten_megabyte_photo_stays_in_original_card_and_round_trips ... ok

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


Full workspace tests after the RSS correction, head d23e80b9. 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try again; no #757 rerun. Output verbatim, part 1/4: ```text Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio) Compiling calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server) Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes) Compiling calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments) Compiling calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops) Compiling calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth) Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks) Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions) Compiling calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily) Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0) Compiling calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs) Compiling calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal) Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf) Finished `test` profile [unoptimized + debuginfo] target(s) in 31.49s Running unittests src/main.rs (target/debug/deps/calternal-a3b50c16e6a6ab3c) running 32 tests test admin::tests::a_stop_sent_before_subscribing_is_still_seen ... ok test admin::tests::an_active_request_gets_a_graceful_shutdown_window ... ok test args::tests::defaults_and_flags ... ok test args::tests::dev_user_never_on_a_public_address ... ok test args::tests::fix_commands ... ok test args::tests::migrate_v0 ... ok test args::tests::origin_defaults_to_the_local_port ... ok test args::tests::setup_and_re_pair_are_explicit ... ok test args::tests::state_defaults_to_resolved_data_and_flags_override_environment ... ok test args::tests::user_create ... ok test admin::tests::shutdown_stops_a_client_waiting_on_a_partial_request ... ok test args::tests::web_folder ... ok test args::tests::user_recover ... ok test admin::tests::a_restart_waits_out_an_admin_request_longer_than_ten_seconds ... ok test isolation::bob_cannot_reach_alices_attachments ... ok test isolation::in_process_server_shutdown_releases_both_roots_200x_under_load ... ignored, stress gate; run explicitly during release validation test isolation::people::backdrops_spend_the_same_counter_as_small_attachments ... ok test isolation::contacts_and_tasks_in_one_home_keep_their_own_members ... ok test isolation::people::duplicate_upload_at_quota_must_not_spend_bytes_twice ... ok test isolation::people::normal_token_failures_do_not_log_or_persist_plaintext ... ok test isolation::people::real_upload_storm_notes_trash_restore_and_delete_usage ... ok test isolation::bob_cannot_join_alices_note_room ... ok test isolation::people_actions_hide_real_ids_from_members_other_users_and_anonymous_callers ... ok test isolation::quota_refuses_large_and_small_uploads_while_notes_still_save ... ok test isolation::bob_reaches_nothing_of_alices_through_any_action ... ok test isolation::split_storage_keeps_originals_and_databases_on_their_disks ... ok test plugins::tests::contract_matches_the_server ... ok test isolation::renaming_a_task_retargets_task_and_contact_links_once ... ok test shutdown_io::tests::shutdown_finishes_an_idle_read_and_keeps_response_writes_open ... ok test shutdown_io::tests::shutdown_bounds_response_writes_to_a_peer_that_stops_reading ... ok test isolation::people::every_action_obeys_person_visibility ... ok test isolation::randomized_home_shutdown_releases_both_roots ... ok test result: ok. 31 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.10s Running tests/attachments_crash.rs (target/debug/deps/attachments_crash-cd2bbef03748dfba) running 2 tests test kill_nine_mid_upload_leaves_nothing_half_written ... ok test a_big_upload_streams_in_bounded_memory ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.19s Running tests/contacts_live.rs (target/debug/deps/contacts_live-75709d75740a5aef) running 2 tests test a_phone_renames_a_contact_while_someone_types_in_a_linking_note ... ok test a_live_h1_collision_keeps_contact_and_incoming_link_identity ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.26s Running tests/fix_tz_live.rs (target/debug/deps/fix_tz_live-0737e923ed502e77) running 2 tests test fix_without_a_running_server_says_so ... ok test strip_tz_markers_on_a_live_home_with_a_client_typing ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.65s Running tests/notes_crash.rs (target/debug/deps/notes_crash-353c659c2c8c58ef) running 3 tests test kill_nine_mid_tag_rename_renames_each_tag_once ... ok test kill_nine_mid_append_on_a_long_note ... ok test kill_nine_never_loses_or_doubles ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.46s Running tests/notes_crash_typing.rs (target/debug/deps/notes_crash_typing-a3186d5f751d22cc) running 1 test test kill_nine_while_people_type_loses_and_doubles_nothing ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.71s Running tests/notes_live.rs (target/debug/deps/notes_live-23dad727506cebb5) running 2 tests test joining_a_missing_note_fails_politely ... ok test type_over_the_websocket_and_read_it_back ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/prefs_live.rs (target/debug/deps/prefs_live-2a45e14c9a3246f1) running 1 test test preferences_are_saved_checked_and_kept ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s Running tests/search_live.rs (target/debug/deps/search_live-f7802571dcef0e22) running 2 tests test perf_live_empty_search_under_one_second ... ignored, live empty-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test notes_from_everywhere_are_found ... ok test result: ok. 1 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.83s Running tests/startup.rs (target/debug/deps/startup-d7666ef4a67395d8) running 6 tests test perf_startup_under_500ms ... ignored, startup latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test refuses_dev_user_on_a_public_address ... ok test refuses_plain_http_on_a_public_origin ... ok test recover_only_knows_real_people ... ok test a_new_server_prints_a_setup_token ... ok test answers_after_launch ... ok test result: ok. 5 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/startup_quota.rs (target/debug/deps/startup_quota-ff7d3c3723709dd3) running 1 test test first_upload_after_healthz_enforces_existing_home_usage ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running tests/storage_startup.rs (target/debug/deps/storage_startup-b157873ab6d847a5) running 11 tests test create_refuses_unpaired_notes_or_databases_before_creating_other_root ... ok test a_lock_held_past_the_longest_grace_still_fails_startup ... ok test legacy_history_read_only_and_invalid_state_are_refused ... ok test both_missing_markers_with_existing_split_data_require_confirmed_re_pair ... ok test original_storage_startup_scenario_repeats_100x_under_load ... ignored, stress gate; run explicitly during release validation test missing_home_refuses_without_creating_directory_or_lock ... ok test missing_state_never_recreates_databases_even_with_create ... ok test startup_waits_for_a_previous_server_to_release_both_roots ... ok test single_root_upgrade_backup_split_cache_delete_and_rollback ... ok test roots_must_keep_their_persistent_partner_and_admin_must_confirm ... ok test both_roots_remain_exclusively_locked ... ok test result: ok. 10 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 10.06s Running unittests src/lib.rs (target/debug/deps/calternal_attachments-d58f6af211aebaca) running 22 tests test serve::tests::dispositions_quote_safely ... ok test serve::tests::only_plain_visible_paths_are_served ... ok test serve::tests::ranges ... ok test tests::http::a_connection_that_breaks_off_leaves_nothing ... ok test tests::http::an_upload_lands_in_its_dated_folder_and_is_served_back ... ok test tests::http::a_retry_with_the_same_key_never_makes_a_second_copy ... ok test tests::http::check_finds_only_your_own_files ... ok test tests::http::paths_that_climb_out_of_the_home_are_not_found ... ok test tests::http::review_754b_upload_preserves_raw_names_and_real_replacement_character_collisions ... ok test tests::http::review_754b_utf8_case_and_normalization_collision_behavior_is_preserved ... ok test tests::http::the_sweep_removes_what_a_crash_left_and_spares_live_uploads ... ok test tests::http::names_can_not_steer_where_a_file_goes ... ok test tests::http::uploads_need_a_session_our_page_and_a_key ... ok test tests::sniffing::days_are_strict ... ok test tests::sniffing::invalid_utf8_names_do_not_claim_replacement_character_names ... ok test tests::sniffing::names_are_kept_but_made_safe ... ok test tests::sniffing::pictures_and_videos_go_to_photos ... ok test tests::sniffing::text_types_come_from_the_extension_and_html_never_runs ... ok test tests::sniffing::the_name_never_decides_a_binary_type ... ok test tests::http::the_limit_holds_while_streaming_without_a_length ... ok test tests::http::the_same_file_again_says_already_uploaded_and_keeps_one_copy ... ok test tests::http::unsafe_types_are_downloads_with_a_strict_policy ... ok test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running unittests src/lib.rs (target/debug/deps/calternal_auth-c6ffb9bdc96505f7) running 30 tests test config::tests::origins ... ok test db::tests::a_version_1_database_gets_passkey_names ... ok test db::tests::existing_database_keeps_people_credentials_and_sessions ... ok test http::cookie_tests::session_cookie_is_host_only_and_secure ... ok test db::tests::opens_twice_and_keeps_schema ... ok test http::proxy_tests::forwarding_stops_at_first_untrusted_hop_and_rejects_malformed_chains ... ok test invite_key::tests::lookup_uses_a_separate_derived_key_and_depends_on_the_server_key ... ok test invite_redeem::tests::expiry_and_clock_rollback_use_the_same_validation_path ... ok test invite_redeem::tests::invalid_invite_classes_perform_one_lookup_and_one_secret_comparison ... ok test invite_redeem::tests::invalid_invites_do_not_reveal_name_conflicts ... ok test limit::reliability_tests::backoff_expires_is_capped_and_refusals_do_not_extend_it ... ok test limit::reliability_tests::buckets_are_independent_and_bounded ... ok test invite_key::tests::key_round_trips_but_modified_ciphertext_and_another_id_fail ... ok test ceremony::tests::anonymous_pool_stays_bounded_and_evicts_oldest ... ok test ceremony::tests::full_pool_refuses_foreign_source_without_discarding_live_prompt ... ok test passkeys::tests::ids_round_trip ... ok test passkeys::tests::names_are_trimmed_short_and_never_empty ... ok test limit::reliability_tests::target_capacity_preserves_live_budgets_and_evicts_only_oldest_expired ... ok test session::tests::names_are_cleaned ... ok test limit::reliability_tests::full_map_evicts_least_recent_without_refusing_new_sources ... ok test setup::tests::names ... ok test setup::tests::names_reject_invisible_and_normalize_nfc ... ok test quota::independent_review_755::second_upload_during_registration_must_count_outside_growth ... ok test setup::tests::recover_needs_a_known_person ... ok test setup::tests::usernames ... ok test token::tests::junk_is_not_a_token ... ok test token::tests::setup_tokens_round_trip_through_pasting ... ok test setup::tests::recovery_requires_exact_username_or_uuid_never_display_name ... ok test setup::tests::cli_creation_refuses_admin_name_confusables ... ok test limit::reliability_tests::source_churn_cannot_reset_target_budget ... ok test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.53s Running tests/abuse.rs (target/debug/deps/abuse-55dc96433ab57c65) running 12 tests test bad_json_and_unknown_fields_are_refused ... ok test forged_sessions_get_nowhere ... ok test junk_setup_tokens_are_refused_then_rate_limited ... ok test duplicate_session_cookies_never_choose_an_identity ... ok test anonymous_prompt_flood_preserves_login_setup_and_add ... ok test login_source_limit_does_not_block_another_client ... ok test non_json_requests_are_refused ... ok test nothing_about_the_server_leaks_before_sign_in ... ok test one_source_cannot_lock_out_another_and_cannot_spoof_forwarding ... ok test oversized_bodies_are_refused ... ok test other_sites_cannot_act_for_you ... ok test garbage_credentials_never_crash ... ok test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s Running tests/create.rs (target/debug/deps/create-073bf952f17a5ede) running 6 tests test an_earlier_first_owner_token_stops_working ... ok test an_expired_enrolment_token_is_refused ... ok test a_created_person_enrolls_their_first_passkey_and_is_the_same_person ... ok test names_must_be_usable_and_unique ... ok test nothing_about_the_person_leaks_before_sign_in ... ok test an_enrolment_token_works_exactly_once_under_a_storm ... ok test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running tests/groups.rs (target/debug/deps/groups-90b4782e7dd6e580) running 1 test test shared_groups_control_visibility_and_managers_only_edit_local_members ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Running tests/host_cookies.rs (target/debug/deps/host_cookies-6b0c997d56c59693) running 3 tests test old_name_is_ignored_and_cleared_once_without_touching_host_session ... ok test duplicate_host_headers_and_stale_requests_never_clear_new_session ... ok test upgrading_schema_six_removes_cookie_state_and_keeps_passkeys ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s Running tests/invites.rs (target/debug/deps/invites-e9c6f1bddf277840) running 8 tests test invite_admin_names_cannot_be_impersonated_and_failure_preserves_invite ... ok test invite_finish_rechecks_admin_names_after_role_changes ... ok test invite_redemption_joins_its_groups_and_other_inviters_cannot_copy_it ... ok test invite_can_be_copied_after_restart_and_only_one_racing_passkey_wins ... ok test losing_the_key_does_not_replace_it_and_invite_secrets_never_enter_action_history ... ok test wrong_expired_used_and_revoked_invites_give_one_answer ... ok test legacy_invite_indexes_upgrade_atomically_and_keep_copy_and_redemption ... ok test invite_redemption_reaches_a_visible_admin_but_not_an_unrelated_member ... ok test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.22s Running tests/isolation.rs (target/debug/deps/isolation-8f6869b624859b1e) running 3 tests test a_cookie_sent_from_another_sites_page_does_not_count ... ok test devices_and_passkeys_of_another_person_are_not_found ... ok test another_persons_passkey_prompt_cannot_be_used_or_cancelled ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s Running tests/login.rs (target/debug/deps/login-869d6dadbd3d3382) running 11 tests test foreign_status_cannot_sign_the_browser_out ... ok test bearer_tokens_work_like_cookies ... ok test a_sign_in_answer_cannot_be_replayed ... ok test an_unknown_passkey_is_refused ... ok test sign_in_with_a_passkey_creates_a_new_installation ... ok test logout_revokes_the_installation_and_rejects_live_cookies ... ok test revoking_another_device_signs_it_out ... ok test sign_out_ends_the_session_immediately ... ok test signing_in_shows_up_live_on_another_device ... ok test signing_out_shows_up_live_on_another_device ... ok test sessions_expire_when_unused ... ok test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.24s Running tests/migration.rs (target/debug/deps/migration-1accde5b0ec134b7) running 1 test test schema_two_copy_keeps_real_credentials_sessions_and_recovery ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s Running tests/passkeys.rs (target/debug/deps/passkeys-15e16beb8d0367d6) running 7 tests test an_empty_name_is_refused_and_a_long_one_is_cut ... ok test add_rename_and_remove_each_leave_a_journal_event ... ok test adding_needs_a_sign_in_and_an_add_prompt_works_once ... ok test a_removed_passkey_that_is_gone_or_unknown_is_not_found ... ok test the_last_passkey_cannot_be_removed ... ok test the_first_passkey_is_listed_with_the_device_it_was_made_on ... ok test the_same_device_cannot_be_added_twice ... ok test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s Running tests/people.rs (target/debug/deps/people-4e83322d17dda982) running 4 tests test first_owner_has_capabilities_and_cannot_demote_the_last_admin ... ok test promotion_cannot_create_confusable_admin_names ... ok test two_admins_racing_to_demote_themselves_leave_one_admin ... ok test member_cannot_change_roles_and_new_capability_sets_work ... ok test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s Running tests/quota_counter.rs (target/debug/deps/quota_counter-f48b0804a4693eb3) running 4 tests test perf_signin_during_large_recount_under_fifty_ms ... ignored, sign-in latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test small_uploads_spend_the_same_allowance_as_large_uploads ... ok test health_reports_retained_storage_measurement_failures ... ok test signin_finishes_before_a_large_recount ... ok test result: ok. 3 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 4.67s Running tests/reliability_review.rs (target/debug/deps/reliability_review-fe810f4afa6e8922) running 22 tests test authentication_database_does_not_wait_for_general_blocking_workers ... ok test anonymous_flood_must_not_evict_other_persons_prompt ... ok test concurrent_quota_admissions_do_not_overspend ... ok test crash_child_exit ... ignored test default_twenty_mib_stream_boundary ... ok test directory_moves_keep_child_accounting_and_deletes_correct ... ok test counter_concurrent_mutations_drift_and_restart ... ok test independent_login_latency_during_recount ... ignored, latency budget runs on the perf VM via perf/auth-latency-vm.sh test ipv6_prefix_must_share_budget ... ok test ipv6_rotation_must_not_lock_out_new_source ... ok test directory_move_during_initial_recount_must_track_later_deletes ... ok test names_normalization_recovery_and_invisibles ... ok test perf_ipv6_source_rotation_under_fifty_five_seconds ... ignored, IPv6 source-churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test normalized_setup_token_must_share_target_budget ... ok test restart_recovers_disk_update_missing_counter_notification ... ok test repeated_bad_signatures_for_one_account_must_share_budget ... ok test source_isolation_and_untrusted_forwarding ... ok test slow_uploads_must_not_starve_authentication_blocking_pool ... ok test trusted_proxy_uses_nearest_untrusted_hop ... ok test streamed_slow_exact_over_abort_and_quota_replacement ... ok test account_owner_can_sign_in_after_backoff_and_success_resets_failures ... ok test independent_login_completes_before_recount ... ok test result: ok. 19 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 1.74s Running tests/reliability_round3.rs (target/debug/deps/reliability_round3-9c5194112c2287db) running 12 tests test canonical_recovery_token_variants_share_one_target_without_spending_other_tokens ... ok test fifty_slow_upload_attempts_preserve_full_signin_and_status ... ok test attachment_and_backdrop_routes_share_caps_and_cancel_cleanup ... ok test ipv4_mapped_v6_and_native_v4_share_budget_but_adjacent_prefix_does_not ... ok test over_ten_thousand_distinct_source_buckets_still_admit_new_clients ... ok test perf_signin_and_status_during_slow_uploads_under_fifty_ms ... ignored, sign-in and status latency budgets run on the perf VM via perf/ordinary-latency-vm.sh test perf_source_bucket_churn_under_fifty_five_seconds ... ignored, source-bucket churn latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test rename_collision_and_replacement_keep_correct_usage ... ok test setup_target_budget_survives_more_than_ten_thousand_sources ... ok test idle_deadline_cleans_files_and_reopens_each_person_capacity ... ok test attachment_slow_bodies_must_not_hold_all_general_blocking_workers ... ok test maximum_account_backoff_releases_owner_despite_refused_retries has been running for over 60 seconds test maximum_account_backoff_releases_owner_despite_refused_retries ... ok test result: ok. 10 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 123.89s Running tests/security_regressions.rs (target/debug/deps/security_regressions-eafb2d2ddad42fa3) running 15 tests test concurrent_key_creation_publishes_one_complete_key ... ok test eight_parallel_redeemers_create_exactly_one_account ... ok test expiry_during_passkey_registration_consumes_nothing ... ok test every_action_rejects_anonymous_expired_and_unprivileged_writes ... ok test groups_manager_must_obey_single_person_visibility_rule ... ok test invite_lookup_must_use_keyed_hash ... ok test malformed_token_must_have_same_generic_response ... ok test key_permissions_missing_corrupt_and_no_plaintext_history ... ok test perf_invite_failure_timing_classes_within_ratio ... ignored, invite failure timing budget runs on the perf VM via perf/ordinary-latency-vm.sh test new_modules_are_small_and_documented ... ok test revoked_expired_used_and_wrong_fail_equally ... ok test origin_dev_schema_migrates_idempotently_and_rolls_back_partial_failure ... ok test two_admins_demoting_each_other_keep_one_manager ... ok test quota_serializes_large_placements_and_tracks_delete_trash ... ok test all_five_invite_failures_have_the_same_body_and_status ... ok test result: ok. 14 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.17s Running tests/setup.rs (target/debug/deps/setup-012b11e547011a67) running 8 tests test a_restart_replaces_the_first_owner_token ... ok test a_finished_prompt_cannot_be_replayed ... ok test first_owner_needs_a_name ... ok test first_owner_signs_up_with_the_printed_token ... ok test a_token_works_exactly_once_under_a_storm ... ok test session_cookie_is_locked_down ... ok test recovery_adds_a_new_passkey_for_the_same_person ... ok test an_expired_setup_token_is_refused ... ok test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s Running unittests src/lib.rs (target/debug/deps/calternal_backdrops-9bb1b7445f355593) running 25 tests test tests::an_answer_that_is_not_a_picture_is_refused_and_not_kept ... ok test tests::a_photo_unknown_to_us_is_looked_up ... ok test tests::a_stricter_attachment_limit_also_bounds_backdrops ... ok test tests::an_upload_is_private_to_the_person_who_made_it ... ok test tests::an_upload_is_kept_once_and_served_back ... ok test tests::changes_need_our_own_page_and_a_signed_in_person ... ok test tests::picking_is_reported_to_unsplash_once ... ok test tests::bad_ids_never_reach_the_disk_or_the_network ... ok test tests::nobody_can_read_or_list_someone_elses_uploads ... ok test tests::pictures_from_other_hosts_are_refused ... ok test tests::pictures_are_proxied_cached_and_never_given_the_key ... ok test tests::search_lists_photos_with_our_own_addresses_and_credit ... ok test tests::storage_cache::split_cache_deletion_refetches_upstream_and_keeps_original_upload ... ok test tests::the_real_client_sends_the_key_and_caps_the_size ... ok test tests::the_real_client_speaks_https_to_unsplash ... ignored, needs the internet test tests::the_same_search_is_answered_once ... ok test tests::too_many_pixels_are_refused_but_files_within_the_byte_limit_work ... ok test tests::unsplash_running_out_of_requests_is_a_plain_slow_down ... ok test tests::uploads_are_checked_by_content_not_by_what_they_claim ... ok test tests::without_a_key_photos_are_off_but_uploads_work ... ok test uploads::reliability_tests::idle_upload_removes_temporary_file_and_releases_admission ... ok test tests::backdrop_quota_refuses_new_files_and_releases_space_on_delete ... ok test uploads::reliability_tests::upload_admission_is_bounded_and_cancellation_restores_capacity ... ok test tests::the_cache_drops_the_oldest_files_past_its_cap ... ok test tests::streaming_upload_stops_at_byte_limit_and_leaves_no_artifact ... ok test result: ok. 24 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.05s Running unittests src/lib.rs (target/debug/deps/calternal_contacts-ee6c1c39ad0c7c23) running 1 test test note::related_links_tests::only_the_cards_related_group_names_related_people ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/apple.rs (target/debug/deps/apple-2e4be127f63ba73a) running 4 tests test apple_rewrite_keeps_canonical_extensions_and_takes_real_edits ... ok test unchanged_duplicate_ungrouped_occurrences_merge ... ok test client_deletion_requires_sent_field_and_uid_is_immutable ... ok test unsent_note_changes_survive_and_concurrent_edits_return_history ... ok test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s Running tests/break_codec.rs (target/debug/deps/break_codec-aafcfb31f8b66aed) running 11 tests test envelope_checks_and_original_copy_reject_ambiguous_or_edited_state ... ok test escaped_separator_parity_keeps_component_and_list_boundaries ... ok test bare_properties_and_ignored_parameter_properties_decode_the_same_values ... ok test canonical_note_comparison_checks_every_byte_and_falls_back_for_local_sections ... ok test folded_and_unfolded_utf8_lines_keep_values_and_their_original_bytes ... ok test multiline_google_custom_labels_cannot_create_other_card_groups ... ok test component_and_list_comparisons_preserve_empty_parts_and_noncanonical_escapes ... ok test quoted_parameter_delimiters_and_value_colons_keep_their_meaning ... ok test typed_reordering_and_value_tag_changes_use_the_exported_wire_projection ... ok test mixed_rendered_values_keep_all_other_bytes_during_a_client_edit ... ok test original_and_edited_note_snapshots_both_preserve_later_typed_edits ... ok test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/break_generated.rs (target/debug/deps/break_generated-820fb6d4d3d4733d) running 9 tests test fixed_seed_generated_shapes_include_every_reaudit_case ... ok test arbitrary_wire_and_note_inputs_preserve_bytes_or_explain_rejection ... ok test independent_vendor_shaped_cards_keep_foldings_metadata_and_unknowns ... ok test generated_notes_shapes_and_repeated_fact_edits_round_trip ... ok test synthetic_vendor_corpus_is_bidirectionally_byte_identical ... ok test five_megabyte_notes_survive_both_conversions ... ok test generated_valid_cards_and_messy_notes_keep_every_field ... ok test megabyte_value_ten_thousand_visible_fields_and_ten_megabyte_photo ... ok test ten_thousand_new_custom_labels_get_unique_groups_and_round_trip ... ok test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.19s Running tests/break_inventory.rs (target/debug/deps/break_inventory-3574ff8515f5622c) running 1 test test every_inventory_property_survives_a_neighbour_edit ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/break_labels.rs (target/debug/deps/break_labels-2a15e9f3957048ff) running 2 tests test names_use_human_order_even_when_vendor_properties_are_reordered ... ok test builtin_labels_show_the_words_on_the_phone_and_recover_original_codes ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/break_layout.rs (target/debug/deps/break_layout-c5075a452332b1c4) running 27 tests test a_phone_note_containing_h2_or_h1_round_trips ... ok test ambiguous_simultaneous_colon_edit_returns_phone_group_and_history ... ok test colon_label_renames_survive_a_following_client_edit ... ok test colon_bearing_label_edits_change_only_the_label_and_value_edits_only_the_value ... ok test company_and_department_edits_share_one_org_in_either_note_order ... ok test duplicate_structured_name_parts_are_unrepresentable ... ok test crlf_notes_preserve_original_escape_spelling_and_do_not_create_merge_conflicts ... ok test colons_delimiters_and_unicode_keep_their_exact_wire_values ... ok test first_list_ends_at_a_paragraph_and_second_list_stays_local ... ok test entering_a_birthday_year_clears_the_apple_omit_year_flag ... ok test later_notes_headings_are_phone_text ... ok test flat_repeatable_lines_stay_and_are_reported ... ok test empty_visible_properties_are_not_deleted_on_an_unchanged_round_trip ... ok test missing_h1_explains_rejection_and_empty_card_is_allowed ... ok test multiline_labels_never_turn_into_unreported_fields ... ok test missing_wire_display_name_is_not_silently_created_by_a_round_trip ... ok test multiple_unrepresentable_document_fields_explain_rejection ... ok test multiple_edits_to_indistinguishable_occurrences_do_not_guess_hidden_parameters ... ok test notes_heading_after_a_local_h1_owns_the_tail ... ok test note_headings_and_crlf_do_not_change_plain_text ... ok test org_hierarchy_is_one_fact_and_unchanged_components_stay_lossless ... ok test tags_keep_list_boundaries_when_a_category_contains_comma_space ... ok test unchanged_values_that_differ_only_by_trailing_spaces_keep_both_occurrences ... ok test utf8_bom_is_document_framing ... ok test unicode_names_keep_normalisation_scripts_direction_and_joiners ... ok test one_property_edit_changes_only_its_original_logical_line ... ok test markdown_whitespace_and_bullets_do_not_edit_the_phone ... ok test result: ok. 27 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s Running tests/break_links.rs (target/debug/deps/break_links-1cfb864ce45a27c1) running 4 tests test a_colon_in_a_related_name_is_text_and_an_explicit_uri_stays_a_uri ... ok test escaped_closing_brackets_inside_a_name_are_not_link_delimiters ... ok test a_plain_name_that_looks_like_a_link_stays_that_name ... ok test related_brackets_and_angle_brackets_are_valid_markdown_and_editable ... ok test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/break_merge.rs (target/debug/deps/break_merge-525543662f577ab1) running 16 tests test crlf_new_group_is_written_once_for_multiple_incoming_values ... ok test additions_removals_values_and_labels_preserve_customised_note ... ok test distinct_repeated_types_return_quiet_concurrent_edit_notice ... ok test apple_reordering_churn_photo_and_dropped_extension_do_not_lose_local_edits ... ok test dropped_extension_parameters_keep_their_order_and_do_not_conflict_with_local_values ... ok test identical_visible_rows_keep_both_occurrences_during_noop_and_changed_merges ... ok test distinct_ungrouped_types_merge_reorders_edits_additions_and_deletions ... ok test phone_label_rename_replaces_local_value_edit ... ok test phone_notes_with_headings_merge_successfully ... ok test phone_note_deletion_does_not_reappear_as_an_empty_note_on_read ... ok test simultaneous_grouped_phone_and_photo_additions_put_photo_before_card ... ok test the_first_card_group_is_added_after_an_existing_photo ... ok test local_label_renames_take_phone_deletes_or_value_edits ... ok test related_links_with_custom_relative_targets_bind_to_the_original_person ... ok test unchanged_repeated_ungrouped_properties_keep_occurrences ... ok test same_line_concurrent_edits_and_deletes_take_phone_group ... ok test result: ok. 16 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s Running tests/format3.rs (target/debug/deps/format3-08cc5a6dbc94328c) running 21 tests test ambiguous_single_fact_delete_and_edit_returns_all_previous_lines ... ok test ambiguous_occurrence_replaces_only_its_group_and_returns_exact_old_lines ... ok test colliding_colon_renderings_keep_occurrences_or_return_the_phone_group ... ok test ambiguous_client_group_takes_phone_order_while_other_groups_merge ... ok test department_hierarchy_is_one_fact_when_both_sides_edit_it ... ok test equal_single_fact_values_still_bind_by_line_order_when_edited ... ok test company_and_department_merge_as_separate_single_facts ... ok test concurrent_org_additions_and_deletes_never_stop_sync ... ok test indistinguishable_single_fact_deletion_returns_phone_group_and_history ... ok test local_sections_above_notes_stay_local_and_below_become_phone_notes ... ok test identical_syncs_do_not_repeat_a_phone_group_replacement_notice ... ok test exact_client_occurrences_win_before_parameterless_identical_additions ... ok test identical_repeatable_rows_return_history_instead_of_guessing_hidden_occurrences ... ok test phone_notes_keep_headings_dividers_lists_and_all_blank_lines_exactly ... ok test repeated_single_facts_typed_from_scratch_create_separate_properties ... ok test org_deletions_use_unique_departments_or_return_every_ambiguous_fact ... ok test repeated_company_conflict_keeps_independent_department_edits ... ok test several_ambiguous_groups_report_each_previous_group_once ... ok test repeated_single_facts_bind_edit_delete_and_multiple_edits_to_occurrences ... ok test unique_values_anchor_client_deletions_even_when_extension_parameters_are_omitted ... ok test unambiguous_repeated_client_edits_and_deletes_keep_other_occurrences ... ok test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/hostile.rs (target/debug/deps/hostile-2aa574927f8d261c) running 10 tests test ambiguous_sources_damaged_notes_and_line_injection_are_errors ... ok test escapes_empty_values_caret_parameters_and_unknown_sequences ... ok test malformed_lines_and_mixed_endings_survive_a_neighbor_edit ... ok test folds_at_arbitrary_byte_boundaries_recover_utf8 ... ok test arbitrary_note_text_never_panics ... ok test arbitrary_bytes_never_panic_or_drop_a_byte ... ok test random_unicode_fields_survive_edits ... ok test ten_thousand_properties_keep_order_and_raw_lines ... ok test random_repeated_grouped_properties_keep_their_inventory ... ok test ten_megabyte_photo_stays_in_original_card_and_round_trips ... ok test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.73s ```
Author
Owner

Full workspace tests after the RSS correction, head d23e80b9. 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try again; no #757 rerun. Output verbatim, part 2/4:

     Running tests/layout.rs (target/debug/deps/layout-4430054a6229ec02)

running 13 tests
test apple_example_note_matches_the_published_layout ... ok
test google_custom_labels_and_non_gregorian_birthdays_keep_their_wire_details ... ok
test adr_has_three_readable_examples ... ok
test markdown_related_links_with_spaces_and_unicode_are_reversible ... ok
test not_a_field_and_other_sections_stay_exact ... ok
test independent_phone_and_note_edits_preserve_local_spelling ... ok
test notes_are_plain_text_two_way_through_nested_headings ... ok
test photo_reference_is_an_attachment_io_boundary ... ok
test renaming_an_apple_label_changes_only_its_label_property ... ok
test phone_edit_appends_to_group_and_keeps_spacing_and_local_lines ... ok
test each_visible_edit_preserves_other_raw_lines ... ok
test typed_edits_after_reading_a_note_patch_the_readable_card ... ok
test readable_layout_and_all_agreed_fields ... ok

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

     Running tests/roundtrip.rs (target/debug/deps/roundtrip-1a666d90e350de63)

running 10 tests
test editing_geo_keeps_coordinate_precision_and_semicolon_structure ... ok
test add_delete_and_repeated_fields_keep_the_right_occurrence ... ok
test new_and_edited_canonical_notes_are_identical_after_wire_import ... ok
test hand_edit_uses_external_original_until_export ... ok
test new_contact_uid_is_note_id_and_default_is_three ... ok
test structured_names_addresses_labels_and_partial_dates_are_typed ... ok
test reordering_fields_and_changing_value_tags_cannot_make_an_unstable_note ... ok
test version_mapping_keeps_phone_text_preferences_and_photo_bytes ... ok
test corpus_is_identical_in_both_directions ... ok
test editing_each_field_changes_only_its_raw_occurrence ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_contacts_actions-36b7f1d2027050e3)

running 130 tests
test cards::tests::ids_cannot_leave_the_folder ... ok
test facts::tests::a_card_without_a_name ... ok
test facts::tests::reads_name_and_facts_in_order ... ok
test frontmatter::tests::no_frontmatter_is_left_alone ... ok
test frontmatter::tests::a_body_divider_is_not_frontmatter ... ok
test frontmatter::tests::splits_and_joins_back_exactly ... ok
test cards::tests::copies_are_written_whole_and_removed ... ok
test jobs::tests::attempts_are_stable_and_distinct ... ok
test import::tests::identity_is_the_uid_or_the_bytes ... ok
test names::tests::a_fact_equal_to_the_name_is_skipped ... ok
test names::tests::bidi_controls_never_reach_a_file_name_but_joiners_do ... ok
test names::tests::case_and_unicode_form_clash ... ok
test names::tests::clashes_add_the_first_fact_then_a_number ... ok
test names::tests::illegal_characters_become_dashes ... ok
test names::tests::empty_and_emoji_names ... ok
test namer::tests::names_come_from_the_note_and_its_card ... ok
test names::tests::nfd_and_nfc_give_one_name ... ok
test names::tests::long_names_are_cut_between_whole_characters ... ok
test tests::basics::contact_actions_never_touch_other_notes ... ok
test tests::basics::bad_cards_are_refused_and_nothing_is_written ... ok
test tests::basics::a_retry_with_the_same_key_makes_one_contact ... ok
test tests::basics::a_new_name_renames_and_links_follow ... ok
test tests::basics::create_writes_the_note_and_its_card ... ok
test tests::basics::delete_goes_to_the_trash_and_restore_brings_it_back ... ok
test tests::basics::update_merges_and_keeps_typing ... ok
test tests::break_links::case_only_renames ... ok
test tests::break_links::a_rename_onto_an_existing_file ... ok
test tests::break_links::deleted_forever_links_say_so ... ok
test tests::break_links::code_stays_and_anchors_travel ... ok
test tests::break_links::relative_links_from_subfolders ... ok
test tests::break_links::rename_while_another_client_edits_a_linking_note ... ok
test tests::break_links::swapping_two_names ... ok
test tests::break_links::nfc_and_nfd_names ... ok
test tests::break_links::the_checker_finds_dangling_links ... ok
test tests::break_names::a_name_an_existing_note_has ... ok
test tests::break_links::the_title_never_renames_a_contact_file ... ok
test tests::break_names::empty_and_emoji_names ... ok
test tests::break_names::names_differing_only_in_case_are_one_name ... ok
test tests::break_names::the_folder_is_a_setting ... ok
test tests::break_names::unsafe_characters_never_reach_the_file_name ... ok
test tests::break_links::rename_chains ... ok
test tests::correctness::acknowledged_edit_between_undo_preparation_and_deletion_survives ... ok
test tests::break_names::very_long_names_fit_the_byte_limit ... ok
test tests::correctness::crash_after_unlink_finishes_history_and_quota_on_restart ... ok
test tests::correctness::deletion_crash_child ... ok
test tests::correctness::deletion_recovery_preserves_an_outside_edit_made_while_down ... ok
test tests::correctness::failed_partial_import_releases_every_prepared_card_exactly ... ok
test tests::break_names::clashes_add_company_then_city_then_nickname_then_domain_then_a_number ... ok
test tests::env::pause_markers_accept_serial_and_parallel_child_harness_output ... ok
test tests::env::fixture_releases_its_engine_and_stores ... ok
test tests::correctness::bounded_shutdown_joins_the_card_write_and_refuses_later_copies ... ok
test tests::import::an_import_makes_every_new_contact_in_one_job ... ok
test tests::import::a_final_flush_failure_in_an_existing_folder_preserves_earlier_contacts ... ok
test tests::import::a_final_flush_failure_undoes_every_published_contact_and_can_retry ... ok
test tests::import::limits_hold ... ok
test tests::import::the_same_file_twice_changes_nothing ... ok
test tests::kill9::child ... ok
test tests::import::bulk_import_preserves_an_id_held_only_by_trash_details ... ok
test tests::import::parallel_import_keeps_input_order_and_compares_existing_peer_facts ... ok
test tests::kill9::create_killed_prepared ... ok
test tests::break_links::five_thousand_links_across_a_thousand_notes ... ok
test tests::kill9::create_killed_committed ... ok
test tests::kill9::create_killed_copying ... ok
test tests::kill9::edit_killed_committed ... ok
test tests::kill9::import_killed_committed ... ok
test tests::kill9::import_killed_copying ... ok
test tests::kill9::edit_killed_copying ... ok
test tests::kill9::import_killed_mid_import ... ok
test tests::kill9::import_killed_planned ... ok
test tests::kill9::import_killed_prepared ... ok
test tests::kill9::rename_killed_committed ... ok
test tests::kill9::rename_killed_mid_rename ... ok
test tests::kill9::rename_killed_copying ... ok
test tests::kill9::rename_killed_planned ... ok
test tests::naming::restoring_into_a_taken_name_uses_the_contacts_rule ... ok
test tests::naming::an_h1_typed_in_the_app_renames_by_the_contacts_rule ... ok
test tests::related::a_related_namesake_in_the_same_import_wins_over_the_book ... ok
test tests::related::an_unchanged_phone_resend_changes_nothing ... ok
test tests::related::create_and_update_link_one_person_and_leave_namesakes_plain ... ok
test tests::kill9::edit_killed_prepared ... ok
test tests::related::related_names_from_one_import_link_to_the_files_made ... ok
test tests::review3::a_card_saved_with_a_byte_order_mark_is_read ... ok
test tests::review3::a_uidless_card_edited_on_the_phone_then_imported_again_is_not_a_duplicate ... ok
test tests::review3::bidi_controls_never_reach_a_file_name ... ok
test tests::review3::contact_writes_are_refused_after_shutdown ... ok
test tests::review3::imports_and_photo_cards_count_against_the_storage_limit ... ok
test tests::kill9::rename_killed_prepared ... ok
test tests::review3::undo_of_a_contact_change_is_held_to_the_limit ... ok
test tests::review3::same_size_photo_swaps_are_held_to_the_limit ... ok
test tests::review::both_ends_in_trash_restore_source_before_target_keeps_identity ... ok
test tests::review::concurrent_undo_and_staged_update_keep_note_and_card_together ... ok
test tests::review::crash_child ... ok
test tests::review::device_name_before_extension_is_safe ... ok
test tests::review::import_shared_company_uses_distinguishing_city_and_identical_facts_use_numbers ... ok
test tests::review::kill9_delete_before_progress ... ok
test tests::review::kill9_delete_only_runtime_inverse ... ok
test tests::props::random_sequences_keep_every_invariant ... ok
test tests::review3::undoing_an_import_releases_everything_it_kept ... ok
test tests::related::every_related_link_reaches_the_person_it_names ... ok
test tests::review::kill9_import_after_history_transaction ... ok
test tests::review::kill9_import_during_file_placement ... ok
test tests::review::kill9_import_after_directory_sync ... ok
test tests::review::kill9_import_after_first_file ... ok
test tests::review::kill9_restore_after_incoming_link_repair ... ok
test tests::review::kill9_restore_after_outgoing_link_repair ... ok
test tests::review::kill9_import_private_files_before_history ... ok
test tests::review::kill9_import_into_existing_folder_after_first_file ... ok
test tests::review::kill9_restore_before_progress ... ok
test tests::review::kill9_runtime_inverse ... ok
test tests::review::kill9_restore_before_incoming_link_repair ... ok
test tests::review::link_in_trash_follows_rename ... ok
test tests::review::kill9_restore_before_outgoing_link_repair ... ok
test tests::review::rename_to_unbalanced_bracket_keeps_a_markdown_link ... ok
test tests::review::replayed_delete_only_runtime_inverse_restores_only_job_edit ... ok
test tests::review::replayed_runtime_inverse_restores_only_job_edit ... ok
test tests::review::restore_does_not_resurrect_a_removed_link_or_retarget_its_identical_replacement ... ok
test tests::review::restore_into_taken_name_preserves_link_identity ... ok
test tests::review::same_company_uses_city ... ok
test tests::review::undo_refuses_a_later_phone_card_before_moving_or_retargeting_anything ... ok
test tests::sweep::the_sweep_drops_cards_of_contacts_gone_for_good ... ok
test tests::sweep::undo_and_deleting_forever_sweep_at_once ... ok
test tests::review::kill9_import_into_existing_folder_after_directory_sync ... ok
test tests::undo::a_retry_after_a_failed_rename_retries_cleanly_and_never_doubles ... ok
test tests::undo::undo_of_a_rename_takes_the_card_back_with_the_note ... ok
test tests::undo::undo_of_an_import_takes_every_contact_back ... ok
test write::tests::keyed_ids_are_stable ... ok
test write::tests::old_titles_cover_name_file_and_clash_forms ... ok
test tests::review::ordinary_tag_job_and_undo_preserve_concurrent_typing ... ok
test tests::undo::a_batch_that_fails_part_way_is_undone_completely ... ok
test tests::review::ring_import_1000_swaps_chains_unicode_h1_and_undo ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_core-22753e58953721f1)

running 13 tests
test action::tests::namespace_is_enforced ... ok
test batch::tests::stops_at_the_first_error ... ok
test drain::tests::close_gives_up_after_its_bound ... ok
test drain::tests::close_waits_for_work_already_in_and_refuses_new_work ... ok
test batch::tests::visits_everything_once_in_order ... ok
test error::tests::every_code_has_a_friendly_message ... ok
test journal::tests::junk_tokens_ask_for_a_refresh ... ok
test journal::tests::tokens_round_trip ... ok
test plugin::tests::plugins_stay_in_their_namespace ... ok
test room_queue::tests::budgets_count_bytes_and_release_on_receive_and_drop ... ok
test room_queue::tests::deferred_payload_keeps_local_and_global_byte_admission ... ok
test room_queue::tests::control_messages_can_release_rooms_when_payload_budgets_are_full ... ok
test room_queue::tests::failed_admission_does_not_leak_reservations ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_daily-b83339fbd8898931)

running 22 tests
test day::tests::midnight_follows_the_device_in_ist ... ok
test day::tests::titles_read_like_the_web_app ... ok
test day::tests::daylight_saving_uses_the_offset_the_device_sends ... ok
test day::tests::names_and_ids ... ok
test tests::bad_input_is_refused_kindly ... ok
test tests::any_text_is_safe_to_read_and_plan ... ok
test tests::an_existing_day_file_is_reused_whatever_its_id ... ok
test tests::close_turns_one_open_entry_into_a_range ... ok
test tests::add_inserts_exactly_one_entry_and_keeps_the_rest ... ok
test tests::log_add_then_close_makes_a_range ... ok
test tests::shared_vectors ... ok
test tests::opening_the_same_day_at_once_makes_one_note ... ok
test tests::today_follows_the_device_offset ... ok
test tests::make_note_on_a_log_line_keeps_times_and_tags ... ok
test times_tests::a_line_with_only_tags_stays_words ... ok
test times_tests::any_line_is_safe ... ok
test times_tests::invalid_spaced_twelve_hour_suffix_stays_a_word_after_a_24_hour_time ... ok
test times_tests::only_a_day_note_has_times ... ok
test tests::two_offline_devices_starting_the_same_day_merge_into_one_note ... ok
test times_tests::a_log_line_splits_into_times_words_and_tags ... ok
test times_tests::trailing_tags_on_any_line ... ok
test tests::no_file_until_the_first_keystroke ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_engine-ff3aa4aa42431a1a)

running 16 tests
test hash::tests::key_order_does_not_matter_but_content_does ... ok
test tests::a_plugin_cannot_write_outside_its_namespace ... ok
test tests::a_retry_runs_once_and_replays_the_result ... ok
test tests::a_huge_job_never_delays_anyone ... ok
test tests::bad_input_and_unknown_actions_are_friendly ... ok
test tests::changes_need_a_key_reads_do_not ... ok
test tests::connected_follows_live_views ... ok
test tests::identical_calls_at_the_same_moment_run_once ... ok
test tests::journal_pages_continue_where_they_stopped ... ok
test tests::no_write_is_lost_while_users_are_released_and_reopened ... ok
test tests::perf_huge_job_action_latency ... ignored, action latency budgets run on the perf VM via perf/ordinary-latency-vm.sh
test tests::a_user_with_a_live_view_or_a_running_action_is_kept ... ok
test tests::users_never_see_each_other ... ok
test tests::an_action_that_outlives_shutdown_commits_nothing ... ok
test tests::shutdown_waits_for_running_actions_and_refuses_new_ones ... ok
test tests::an_idle_user_is_released_and_comes_back_with_nothing_lost ... ok

test result: ok. 15 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.48s

     Running unittests src/lib.rs (target/debug/deps/calternal_fixtures-6f98542429b58355)

running 5 tests
test dates::tests::round_trips_and_formats ... ok
test rng::tests::same_seed_same_numbers ... ok
test tests::same_seed_same_bytes_other_seed_other_bytes ... ok
test tests::looks_like_a_real_home ... ok
test tests::full_gate_has_enough_disjoint_samples ... ok

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

     Running unittests src/main.rs (target/debug/deps/calternal_fixtures-f234eac8403fa749)

running 0 tests

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

     Running unittests src/lib.rs (target/debug/deps/calternal_fsio-ee3ae0acac8e7ccc)

running 112 tests
test beneath::review_754d::review_754d_open_sub_must_keep_its_ancestry ... ok
test beneath::tests::paths_that_climb_out_are_refused ... ok
test beneath::resolver::tests::missing_openat2_leaves_the_scope_unmeasured_without_fallback ... ok
test beneath::resolver::tests::unsupported_handles_exhaust_the_pin_budget_without_publishing ... ok
test swap::create_tests::create_preserves_outside_file_appearing_after_absence_check ... ok
test beneath::tests::temp_files_persist_without_replacing_and_vanish_when_dropped ... ok
test beneath::tests::walking_without_openat2_refuses_symlinks_too ... ok
test swap::create_tests::unsupported_exchange_never_replaces_an_existing_file ... ok
test tests::atomic_write_replaces_and_leaves_no_temp_files ... ok
test tests::a_published_directory_retains_ownership_when_a_parent_flush_fails ... ok
test tests::case_only_rename_preserves_a_different_destination ... ok
test tests::case_only_collision_rolls_back_or_keeps_the_staged_original ... ok
test tests::case_only_rename_works_and_other_clashes_are_refused ... ok
test tests::directory_publication_rechecks_changed_inheritance_policy ... ok
test tests::delta_rename_must_preserve_file_arriving_after_absence_check ... ok
test tests::dropping_data_lock_releases_it_even_with_an_inherited_file_handle ... ok
test tests::failed_write_keeps_the_old_file ... ok
test tests::a_private_directory_is_invisible_until_exclusive_publication ... ok
test tests::many_files_are_replaced_whole ... ok
test tests::many_new_files_never_replace_anything ... ok
test tests::named_bulk_staging_is_whole_exclusive_and_leaves_no_temporary_name ... ok
test tests::names_fold_case_and_unicode_form ... ok
test tests::only_one_process_owns_a_data_folder ... ok
test tests::prepared_writes_land_only_when_placed ... ok
test tests::rename_preserves_a_dangling_destination_symlink ... ok
test tests::private_directory_publication_preserves_a_destination_that_arrives ... ok
test tests::staged_bulk_keeps_the_destination_default_acl ... ok
test tests::unique_names_skip_case_and_form_clashes ... ok
test tests::staged_bulk_preserves_occupied_files_and_falls_back_when_staging_is_missing ... ok
test tests::write_unless_changed_keeps_someone_elses_version ... ok
test usage::admission_tests::scoped_admission_does_not_measure_an_unrelated_unreadable_home ... ok
test usage::admission_tests::scoped_admission_recounts_growth_deletion_and_cross_home_moves ... ok
test usage::independent_review::independent_crash_child ... ignored, helper process for the controlled SIGKILL test
test tests::parallel_bulk_preserves_result_slots_and_observes_the_final_sync ... ok
test tests::big_writes_arrive_whole ... ok
test usage::independent_review::independent_external_edits_and_startup ... ok
test usage::independent_review::independent_kill_between_observation_and_counter_publish ... ok
test usage::independent_review::independent_non_utf8_filename_on_startup ... ok
test usage::independent_review::independent_folder_and_file_moves ... ok
test usage::independent_review::independent_unreadable_regular_file_on_startup ... ok
test usage::inode_watch::platform::tests::inode_listener_stops_under_continuous_outside_writes ... ok
test usage::reconcile::tests::reconciliation_wait_is_bounded_by_the_scope_deadline ... ok
test usage::regressions::existing_directory_moves_trash_restore_delete_match_walk ... ok
test usage::independent_review::independent_concurrent_app_and_outside_replacements ... ok
test usage::regressions::hard_link_in_place_change_must_match_walk ... ok
test usage::regressions::hard_links_created_after_startup_and_alias_replacement_converge ... ok
test usage::regressions::native_publish_then_outside_move_must_match_walk ... ok
test usage::regressions::stopped_server_changes_are_recounted ... ok
test usage::regressions::write_via_hard_link_outside_watch_must_match_walk ... ok
test usage::retained_failures::disjoint_failures_and_failed_full_recounts_retain_the_union ... ok
test usage::review_754b::health_is_retained_without_io_and_cleared_by_a_successful_full_scan ... ok
test usage::review_754b::raw_listing_and_quota_distinguish_two_invalid_names_and_their_display_name ... ok
test usage::review_754b::scoped_failure_must_not_forget_other_retained_unmeasured_subtrees ... ok
test usage::review_754b::symlinks_and_special_entries_do_not_charge_or_pollute_health ... ok
test usage::review_754b::unreadable_sparse_regular_file_is_measured_without_read_access ... ok
test usage::review_754c::review_754c_mixed_scoped_retries_retain_exact_union_until_full_success ... ok
test usage::review_754c::review_754c_ordinary_edits_during_recounts_do_not_poison_health ... ok
test usage::scan::containment::moving_ancestor_invalidates_unchanged_child_descriptor ... ok
test usage::scan::containment::removed_directory_is_unmeasured_instead_of_successfully_empty ... ok
test usage::scan::containment::rename_at_end_of_walk_invalidates_already_observed_metadata ... ok
test usage::scan::property::directory_moved_after_its_recursion_returns_rejects_the_whole_scope ... ok
test usage::scan::property::expired_scope_deadline_performs_no_walk ... ok

running 1 test
quota containment: 32 seeded bind/tmpfs topologies passed
test usage::scan::property::mounts::seeded_bind_and_tmpfs_topologies_exclude_mounts_and_recover ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 111 filtered out; finished in 0.08s

test usage::scan::property::mounts::seeded_bind_and_tmpfs_topologies_exclude_mounts_and_recover ... ok
test usage::scan::property::repeated_users_replacement_exhausts_three_attempts_without_charging ... ok

running 1 test
test usage::scan::property::review_754d_scan::review_754d_mount_appearing_during_walk_is_currently_in_scope ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 111 filtered out; finished in 0.00s

test usage::scan::property::review_754d_scan::review_754d_mount_appearing_during_walk_is_currently_in_scope ... ok
test usage::scan::property::review_754d_scan::review_754d_outer_reconciliation_must_bound_restarts ... ok
test usage::scan::property::review_754d_scan::review_754d_refresh_must_not_follow_a_replaced_parent_symlink ... ok
test usage::scan::property::review_754d_scan::review_754d_returned_directory_charges_bytes_that_returned_with_it ... ok
test usage::scan::property::review_754d_scan::review_754d_reused_directory_inode_must_not_certify_a_replacement ... ok
cp: failed to clone '/tmp/quota-independent-229202-6/users/b/copy' from '/tmp/quota-independent-229202-6/users/a/sparse': Operation not supported
test usage::independent_review::independent_sparse_large_zero_and_symlinks ... ok
test usage::regressions::removing_or_moving_the_watched_alias_retains_external_write_coverage ... ok
test usage::scan::review_754b_scan::opened_parent_moved_outside_home_must_not_be_walked ... ok
test usage::scan::review_754c_scan::review_754c_deletion_after_last_stat_discards_snapshot_and_recount_succeeds ... ok
test usage::scan::review_754c_scan::review_754c_raw_names_unreadable_sparse_files_and_symlinks ... ok
test usage::scan::review_754c_scan::review_754c_rename_at_each_depth_rejects_then_rescans_and_accepts_return ... ok
test usage::scan::review_754c_scan::review_754c_replaced_users_root_cannot_charge_new_outside_files ... ok
test usage::scan::review_754c_scan::review_754c_swapping_folders_invalidates_both_open_descriptors ... ok
test usage::tests::a_change_that_becomes_unmeasurable_during_recount_reports_failure ... ok
test usage::tests::a_move_target_already_seen_by_a_recount_is_not_charged_twice ... ok
test usage::tests::a_separate_state_root_counts_what_plugins_report ... ok
test usage::tests::application_writes_through_directory_aliases_charge_the_real_file_once ... ok
test usage::tests::background_accounts_for_outside_edits_and_directory_moves ... ok
test usage::tests::background_does_not_count_symlink_targets ... ok
test usage::tests::background_notices_a_created_and_replaced_users_tree ... ok
test usage::tests::bulk_writes_and_published_folders_count_without_a_recount ... ok
test usage::tests::changes_keep_history_only_during_a_recount_even_after_failure ... ok
test usage::tests::incomplete_measurements_remain_visible_until_a_full_recount ... ok
test usage::tests::raw_names_survive_startup_and_scoped_repair ... ok
test usage::tests::reads_do_not_wait_for_the_counter_writer ... ok
test usage::tests::recount_does_not_charge_directory_aliases_twice ... ok
test usage::tests::recount_preserves_concurrent_writes_and_deletes ... ok
test usage::tests::stale_metadata_cannot_replace_a_newer_update ... ok
test usage::tests::unreadable_subtree_is_a_retained_failure_not_zero_usage ... ok
test usage::tests::writes_moves_trash_and_purge_update_without_a_recount ... ok

running 1 test
test usage::watch::independent_review_755::abrupt_stop_during_registration_reopens_acknowledged_files ... ok
test usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames ... ok
test usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota ... ok
test usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration ... ok
test usage::watch::independent_review_755::registration_recount_repairs_window_mutations_and_merges_app_writes ... ok
test usage::watch::randomized::missing_new_folder_repairs_only_its_home ... ok
test usage::watch::randomized::temporary_rename_paths_do_not_repair_unrelated_homes ... ok
test usage::independent_review::independent_hardlink_lifecycle ... ok
test usage::watch::randomized::write_then_unlink_event_name_repairs_surviving_aliases ... ok
test usage::watch::recovery::tests::successful_recount_with_restored_watches_turns_polling_off ... ok
test usage::watch::tests::a_file_removed_before_native_watch_install_is_transient ... ok
test usage::watch::tests::dropping_usage_wakes_the_idle_event_worker ... ok
test usage::watch::tests::fallback_recounts_when_due_even_with_queued_events ... ok
test usage::watch::tests::gathering_stops_at_its_deadline_even_with_queued_events ... ok
test usage::watch::tests::watcher_registration_never_blocks_startup_or_initial_accounting ... ok
test usage::scan::property::two_thousand_seeded_topology_changes_match_final_tree_or_retry ... ok
test usage::watch::randomized::ten_thousand_random_operation_sequences_match_full_walk ... ok
test usage::scan::property::review_754d_scan::review_754d_twenty_thousand_additional_topologies ... ok

test result: ok. 111 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 38.82s

     Running tests/review_754d_mount.rs (target/debug/deps/review_754d_mount-c647d341d08c48e4)

running 2 tests

running 1 test

running 1 test
test review_754d_bind_mount_is_currently_in_scope ... ok

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

test review_754d_tmpfs_mount_is_currently_in_scope ... ok

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

test review_754d_bind_mount_is_currently_in_scope ... ok
test review_754d_tmpfs_mount_is_currently_in_scope ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_memory-3b65467e6e94a530)

running 3 tests
test tests::huge_pages_go_off ... ok
test tests::nested_bursts_defer_automatic_reclamation_and_unwind_releases_them ... ok
test tests::trimming_is_harmless ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_migrate_v0-f1da720039731837)

running 37 tests
test tests::rules::dry_run_writes_nothing ... ok
test tests::rules::m1_custom_daily_title_and_heading_stay ... ok
test tests::rules::edited_files_are_never_overwritten_without_asking ... ok
test tests::rules::m1_daily_notes_get_day_names_ids_and_lose_generated_headings ... ok
test tests::rules::m1_titles_come_from_title_then_h1_then_file_name_and_stay_unique ... ok
test tests::rules::m10_tz_markers_go_and_other_zones_convert_to_the_notes_zone ... ok
test tests::rules::m2_attachments_that_exist_are_copied_and_relinked ... ok
test tests::rules::m2_code_is_never_rewritten ... ok
test tests::rules::m2_unresolved_links_stay_as_written_and_are_reported ... ok
test tests::rules::m2_wikilinks_always_become_standard_links ... ok
test tests::rules::m2_links_are_repaired_by_name_date_title_and_slug ... ok
test tests::rules::m3_m5_frontmatter_keys_drop_and_times_convert ... ok
test tests::rules::m4_unreferenced_block_ids_go_and_referenced_ones_stay ... ok
test tests::rules::m5_unreadable_dates_fall_back ... ok
test tests::rules::m6_conflict_copies_are_not_migrated ... ok
test tests::rules::m7_tasks_blocks_are_stripped_and_listed ... ok
test tests::rules::m8_only_notes_and_linked_files_move ... ok
test tests::units::file_names_give_titles ... ok
test tests::units::every_v0_time_shape_converts ... ok
test tests::units::links_parse_in_every_shape ... ok
test tests::units::keys_ignore_case_encoding_quotes_and_md ... ok
test tests::units::unix_times_become_india_time ... ok
test tzmarker::tests::a_conversion_that_leaves_the_day_is_kept_and_reported ... ok
test tzmarker::tests::code_is_never_touched ... ok
test tzmarker::tests::berlin_converts_inside_the_day ... ok
test tzmarker::tests::eu_summer_time_edges ... ok
test tzmarker::tests::day_from_a_date_value ... ok
test tzmarker::tests::marker_at_the_end_or_tight_leaves_no_stray_space ... ok
test tzmarker::tests::no_zone_in_the_note_means_strip_only ... ok
test tzmarker::tests::not_a_marker_is_left_alone ... ok
test tzmarker::tests::same_zone_just_goes ... ok
test tzmarker::tests::second_run_changes_nothing ... ok
test tzmarker::tests::styles_survive_conversion ... ok
test tzmarker::tests::unknown_zone_or_a_non_log_line_is_kept_and_counted ... ok
test write::tests::migration_preserves_files_changed_after_preflight ... ok
test tests::rules::running_twice_gives_the_same_bytes ... ok
test tests::no_new_markers::nothing_writes_a_tz_marker ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_notes-79d3b5f37adfa616)

running 461 tests
test backlinks::tests::snippets_are_the_trimmed_line ... ok
test backlinks::tests::links_are_fold_keys_and_lines ... ok
test anchor::tests::lines_by_utf16_index ... ok
test anchor::tests::hash_is_plain_sha256_hex ... ok
test blocks::tests::finds_list_children_and_heading_sections ... ok
test blocks::tests::line_edits ... ok
test blocks::tests::shapes_keep_markers ... ok
test blocks::tests::titles_from_the_first_sentence ... ok
test backlinks::writes::tests::replacement_still_works_while_the_source_index_is_dropped ... ok
test backlinks::writes::tests::identical_multisets_do_not_write_even_when_order_changes ... ok
test bulk::undo::tests::inverse_restores_the_text ... ok
test backlinks::writes::tests::changed_lines_duplicates_and_corrupt_values_are_replaced ... ok
test diff::tests::an_inserted_line_starts_at_a_line_start ... ok
test bulk::undo::tests::inverse_roundtrips ... ok
test bulk::error_tests::legacy_job_reports_hide_stored_source_details ... ok
test diff::tests::emoji_positions_are_utf16 ... ok
test diff::tests::small_change_is_a_small_edit ... ok
test file_stamp::tests::each_field_and_path_byte_affects_the_stamp ... ok
test file_stamp::tests::filesystem_metadata_uses_nanoseconds_and_the_exact_relative_path ... ok
test file_stamp::tests::stable_vectors_cover_unicode_and_extreme_scalars ... ok
test frontmatter::tests::h1_skips_code_and_frontmatter ... ok
test frontmatter::tests::quoting ... ok
test frontmatter::tests::reads_keys ... ok
test frontmatter::tests::set_adds_a_line_or_a_block ... ok
test frontmatter::tests::set_changes_only_the_value ... ok
test frontmatter::tests::set_is_utf16_aware ... ok
test health::tests::anchors ... ok
test bulk::error_tests::failed_job_reports_keep_source_details_in_the_server_error ... ok
test diff::tests::edits_turn_old_into_new ... ok
test history::blobs::tests::photo_chunks_preserve_folding_unknown_fields_and_line_endings ... ok
test diff::tests::edits_never_split_a_character ... ok
test history::companions::migration_tests::old_staging_allocation_order_migrates_to_application_order ... ok
test history::companions::import_cache_tests::prepared_companions_are_applied_on_insert_or_roll_back_with_the_plan ... ok
test history::companions::tests::a_companion_lands_with_its_change ... ok
test history::companions::import_cache_tests::import_cache_budget_returns_after_success_and_failure ... ok
test history::companions::tests::keys_answer_without_reading_bytes_and_cover_older_rows ... ok
test history::companions::tests::rejected_companion_writes_leave_history_and_quota_unchanged ... ok
test history::companions::tests::staged_rows_wait_for_their_step ... ok
test history::companions::tests::retained_bytes_follow_every_change_and_match_a_full_count ... ok
test history::memory_tests::batch_admission_failure_dooms_its_lane_before_a_later_write ... ok
test history::tests::a_busy_begin_reports_its_cause_without_running_the_job ... ok
test history::companions::tests::written_marks_and_unwritten_rows ... ok
test history::tests::a_failed_commit_never_replies_with_a_successful_statement_result ... ok
test history::tests::a_failed_statement_rolls_back_and_reports_the_cause_to_the_whole_group ... ok
test history::tests::a_competing_writer_cannot_invalidate_a_history_write_snapshot ... ok
test history::memory_tests::history_payload_bytes_are_bounded_per_home_and_globally_until_completion ... ok
test history::tests::appends_are_ordered_and_readable ... ok
test history::tests::background_save_bookkeeping_shares_edits_without_early_receipts ... ok
test history::tests::pending_save_promotes_to_base ... ok
test index::snapshot_tests::bounded_snapshots_keep_owned_rows_across_holes_and_slot_reuse ... ok
test index::tests::a_shared_path_answers_with_the_newest_note ... ok
test index::tests::a_torn_tail_cannot_swallow_the_next_durable_mapping ... ok
test history::tests::disk_full_keeps_the_cause_and_failed_writes_can_be_retried ... ok
test index::tests::compacts_when_it_grows ... ok
test history::blobs::tests::fifty_two_weekly_edits_share_the_unchanged_original_photo ... ok
test index::tests::imported_mappings_share_one_log_append_and_survive_reload ... ok
test index::tests::reload_speed ... ignored
test index::tests::survives_reload_renames_and_torn_lines ... ok
test index::tests::under_finds_exact_paths_and_descendants_with_folded_names ... ok
test index::tests::under_keeps_shadowed_paths_for_watcher_removal ... ok
test home::background_task_tests::finished_background_tasks_are_reaped_during_normal_operation ... ok
test links::escaped_labels::generated_labels_round_trip_and_custom_markup_survives_retargeting ... ok
test index::tests::unloads_and_reloads ... ok
test links::tests::finds_standard_and_old_style_links ... ok
test links::tests::frontmatter_code_samples_do_not_hide_body_links ... ok
test links::tests::longer_backtick_fence_does_not_close_on_three_ticks ... ok
test links::tests::nested_brackets_in_text ... ok
test links::tests::nested_fences_and_indented_code_follow_commonmark_boundaries ... ok
test links::tests::normal_fence_control_keeps_links_after_the_block ... ok
test links::tests::relative_paths ... ok
test links::tests::resolves_relative_to_the_linking_note ... ok

Full workspace tests after the RSS correction, head d23e80b9. 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try again; no #757 rerun. Output verbatim, part 2/4: ```text Running tests/layout.rs (target/debug/deps/layout-4430054a6229ec02) running 13 tests test apple_example_note_matches_the_published_layout ... ok test google_custom_labels_and_non_gregorian_birthdays_keep_their_wire_details ... ok test adr_has_three_readable_examples ... ok test markdown_related_links_with_spaces_and_unicode_are_reversible ... ok test not_a_field_and_other_sections_stay_exact ... ok test independent_phone_and_note_edits_preserve_local_spelling ... ok test notes_are_plain_text_two_way_through_nested_headings ... ok test photo_reference_is_an_attachment_io_boundary ... ok test renaming_an_apple_label_changes_only_its_label_property ... ok test phone_edit_appends_to_group_and_keeps_spacing_and_local_lines ... ok test each_visible_edit_preserves_other_raw_lines ... ok test typed_edits_after_reading_a_note_patch_the_readable_card ... ok test readable_layout_and_all_agreed_fields ... ok test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running tests/roundtrip.rs (target/debug/deps/roundtrip-1a666d90e350de63) running 10 tests test editing_geo_keeps_coordinate_precision_and_semicolon_structure ... ok test add_delete_and_repeated_fields_keep_the_right_occurrence ... ok test new_and_edited_canonical_notes_are_identical_after_wire_import ... ok test hand_edit_uses_external_original_until_export ... ok test new_contact_uid_is_note_id_and_default_is_three ... ok test structured_names_addresses_labels_and_partial_dates_are_typed ... ok test reordering_fields_and_changing_value_tags_cannot_make_an_unstable_note ... ok test version_mapping_keeps_phone_text_preferences_and_photo_bytes ... ok test corpus_is_identical_in_both_directions ... ok test editing_each_field_changes_only_its_raw_occurrence ... ok test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Running unittests src/lib.rs (target/debug/deps/calternal_contacts_actions-36b7f1d2027050e3) running 130 tests test cards::tests::ids_cannot_leave_the_folder ... ok test facts::tests::a_card_without_a_name ... ok test facts::tests::reads_name_and_facts_in_order ... ok test frontmatter::tests::no_frontmatter_is_left_alone ... ok test frontmatter::tests::a_body_divider_is_not_frontmatter ... ok test frontmatter::tests::splits_and_joins_back_exactly ... ok test cards::tests::copies_are_written_whole_and_removed ... ok test jobs::tests::attempts_are_stable_and_distinct ... ok test import::tests::identity_is_the_uid_or_the_bytes ... ok test names::tests::a_fact_equal_to_the_name_is_skipped ... ok test names::tests::bidi_controls_never_reach_a_file_name_but_joiners_do ... ok test names::tests::case_and_unicode_form_clash ... ok test names::tests::clashes_add_the_first_fact_then_a_number ... ok test names::tests::illegal_characters_become_dashes ... ok test names::tests::empty_and_emoji_names ... ok test namer::tests::names_come_from_the_note_and_its_card ... ok test names::tests::nfd_and_nfc_give_one_name ... ok test names::tests::long_names_are_cut_between_whole_characters ... ok test tests::basics::contact_actions_never_touch_other_notes ... ok test tests::basics::bad_cards_are_refused_and_nothing_is_written ... ok test tests::basics::a_retry_with_the_same_key_makes_one_contact ... ok test tests::basics::a_new_name_renames_and_links_follow ... ok test tests::basics::create_writes_the_note_and_its_card ... ok test tests::basics::delete_goes_to_the_trash_and_restore_brings_it_back ... ok test tests::basics::update_merges_and_keeps_typing ... ok test tests::break_links::case_only_renames ... ok test tests::break_links::a_rename_onto_an_existing_file ... ok test tests::break_links::deleted_forever_links_say_so ... ok test tests::break_links::code_stays_and_anchors_travel ... ok test tests::break_links::relative_links_from_subfolders ... ok test tests::break_links::rename_while_another_client_edits_a_linking_note ... ok test tests::break_links::swapping_two_names ... ok test tests::break_links::nfc_and_nfd_names ... ok test tests::break_links::the_checker_finds_dangling_links ... ok test tests::break_names::a_name_an_existing_note_has ... ok test tests::break_links::the_title_never_renames_a_contact_file ... ok test tests::break_names::empty_and_emoji_names ... ok test tests::break_names::names_differing_only_in_case_are_one_name ... ok test tests::break_names::the_folder_is_a_setting ... ok test tests::break_names::unsafe_characters_never_reach_the_file_name ... ok test tests::break_links::rename_chains ... ok test tests::correctness::acknowledged_edit_between_undo_preparation_and_deletion_survives ... ok test tests::break_names::very_long_names_fit_the_byte_limit ... ok test tests::correctness::crash_after_unlink_finishes_history_and_quota_on_restart ... ok test tests::correctness::deletion_crash_child ... ok test tests::correctness::deletion_recovery_preserves_an_outside_edit_made_while_down ... ok test tests::correctness::failed_partial_import_releases_every_prepared_card_exactly ... ok test tests::break_names::clashes_add_company_then_city_then_nickname_then_domain_then_a_number ... ok test tests::env::pause_markers_accept_serial_and_parallel_child_harness_output ... ok test tests::env::fixture_releases_its_engine_and_stores ... ok test tests::correctness::bounded_shutdown_joins_the_card_write_and_refuses_later_copies ... ok test tests::import::an_import_makes_every_new_contact_in_one_job ... ok test tests::import::a_final_flush_failure_in_an_existing_folder_preserves_earlier_contacts ... ok test tests::import::a_final_flush_failure_undoes_every_published_contact_and_can_retry ... ok test tests::import::limits_hold ... ok test tests::import::the_same_file_twice_changes_nothing ... ok test tests::kill9::child ... ok test tests::import::bulk_import_preserves_an_id_held_only_by_trash_details ... ok test tests::import::parallel_import_keeps_input_order_and_compares_existing_peer_facts ... ok test tests::kill9::create_killed_prepared ... ok test tests::break_links::five_thousand_links_across_a_thousand_notes ... ok test tests::kill9::create_killed_committed ... ok test tests::kill9::create_killed_copying ... ok test tests::kill9::edit_killed_committed ... ok test tests::kill9::import_killed_committed ... ok test tests::kill9::import_killed_copying ... ok test tests::kill9::edit_killed_copying ... ok test tests::kill9::import_killed_mid_import ... ok test tests::kill9::import_killed_planned ... ok test tests::kill9::import_killed_prepared ... ok test tests::kill9::rename_killed_committed ... ok test tests::kill9::rename_killed_mid_rename ... ok test tests::kill9::rename_killed_copying ... ok test tests::kill9::rename_killed_planned ... ok test tests::naming::restoring_into_a_taken_name_uses_the_contacts_rule ... ok test tests::naming::an_h1_typed_in_the_app_renames_by_the_contacts_rule ... ok test tests::related::a_related_namesake_in_the_same_import_wins_over_the_book ... ok test tests::related::an_unchanged_phone_resend_changes_nothing ... ok test tests::related::create_and_update_link_one_person_and_leave_namesakes_plain ... ok test tests::kill9::edit_killed_prepared ... ok test tests::related::related_names_from_one_import_link_to_the_files_made ... ok test tests::review3::a_card_saved_with_a_byte_order_mark_is_read ... ok test tests::review3::a_uidless_card_edited_on_the_phone_then_imported_again_is_not_a_duplicate ... ok test tests::review3::bidi_controls_never_reach_a_file_name ... ok test tests::review3::contact_writes_are_refused_after_shutdown ... ok test tests::review3::imports_and_photo_cards_count_against_the_storage_limit ... ok test tests::kill9::rename_killed_prepared ... ok test tests::review3::undo_of_a_contact_change_is_held_to_the_limit ... ok test tests::review3::same_size_photo_swaps_are_held_to_the_limit ... ok test tests::review::both_ends_in_trash_restore_source_before_target_keeps_identity ... ok test tests::review::concurrent_undo_and_staged_update_keep_note_and_card_together ... ok test tests::review::crash_child ... ok test tests::review::device_name_before_extension_is_safe ... ok test tests::review::import_shared_company_uses_distinguishing_city_and_identical_facts_use_numbers ... ok test tests::review::kill9_delete_before_progress ... ok test tests::review::kill9_delete_only_runtime_inverse ... ok test tests::props::random_sequences_keep_every_invariant ... ok test tests::review3::undoing_an_import_releases_everything_it_kept ... ok test tests::related::every_related_link_reaches_the_person_it_names ... ok test tests::review::kill9_import_after_history_transaction ... ok test tests::review::kill9_import_during_file_placement ... ok test tests::review::kill9_import_after_directory_sync ... ok test tests::review::kill9_import_after_first_file ... ok test tests::review::kill9_restore_after_incoming_link_repair ... ok test tests::review::kill9_restore_after_outgoing_link_repair ... ok test tests::review::kill9_import_private_files_before_history ... ok test tests::review::kill9_import_into_existing_folder_after_first_file ... ok test tests::review::kill9_restore_before_progress ... ok test tests::review::kill9_runtime_inverse ... ok test tests::review::kill9_restore_before_incoming_link_repair ... ok test tests::review::link_in_trash_follows_rename ... ok test tests::review::kill9_restore_before_outgoing_link_repair ... ok test tests::review::rename_to_unbalanced_bracket_keeps_a_markdown_link ... ok test tests::review::replayed_delete_only_runtime_inverse_restores_only_job_edit ... ok test tests::review::replayed_runtime_inverse_restores_only_job_edit ... ok test tests::review::restore_does_not_resurrect_a_removed_link_or_retarget_its_identical_replacement ... ok test tests::review::restore_into_taken_name_preserves_link_identity ... ok test tests::review::same_company_uses_city ... ok test tests::review::undo_refuses_a_later_phone_card_before_moving_or_retargeting_anything ... ok test tests::sweep::the_sweep_drops_cards_of_contacts_gone_for_good ... ok test tests::sweep::undo_and_deleting_forever_sweep_at_once ... ok test tests::review::kill9_import_into_existing_folder_after_directory_sync ... ok test tests::undo::a_retry_after_a_failed_rename_retries_cleanly_and_never_doubles ... ok test tests::undo::undo_of_a_rename_takes_the_card_back_with_the_note ... ok test tests::undo::undo_of_an_import_takes_every_contact_back ... ok test write::tests::keyed_ids_are_stable ... ok test write::tests::old_titles_cover_name_file_and_clash_forms ... ok test tests::review::ordinary_tag_job_and_undo_preserve_concurrent_typing ... ok test tests::undo::a_batch_that_fails_part_way_is_undone_completely ... ok test tests::review::ring_import_1000_swaps_chains_unicode_h1_and_undo ... ok test result: ok. 130 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 22.12s Running unittests src/lib.rs (target/debug/deps/calternal_core-22753e58953721f1) running 13 tests test action::tests::namespace_is_enforced ... ok test batch::tests::stops_at_the_first_error ... ok test drain::tests::close_gives_up_after_its_bound ... ok test drain::tests::close_waits_for_work_already_in_and_refuses_new_work ... ok test batch::tests::visits_everything_once_in_order ... ok test error::tests::every_code_has_a_friendly_message ... ok test journal::tests::junk_tokens_ask_for_a_refresh ... ok test journal::tests::tokens_round_trip ... ok test plugin::tests::plugins_stay_in_their_namespace ... ok test room_queue::tests::budgets_count_bytes_and_release_on_receive_and_drop ... ok test room_queue::tests::deferred_payload_keeps_local_and_global_byte_admission ... ok test room_queue::tests::control_messages_can_release_rooms_when_payload_budgets_are_full ... ok test room_queue::tests::failed_admission_does_not_leak_reservations ... ok test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_daily-b83339fbd8898931) running 22 tests test day::tests::midnight_follows_the_device_in_ist ... ok test day::tests::titles_read_like_the_web_app ... ok test day::tests::daylight_saving_uses_the_offset_the_device_sends ... ok test day::tests::names_and_ids ... ok test tests::bad_input_is_refused_kindly ... ok test tests::any_text_is_safe_to_read_and_plan ... ok test tests::an_existing_day_file_is_reused_whatever_its_id ... ok test tests::close_turns_one_open_entry_into_a_range ... ok test tests::add_inserts_exactly_one_entry_and_keeps_the_rest ... ok test tests::log_add_then_close_makes_a_range ... ok test tests::shared_vectors ... ok test tests::opening_the_same_day_at_once_makes_one_note ... ok test tests::today_follows_the_device_offset ... ok test tests::make_note_on_a_log_line_keeps_times_and_tags ... ok test times_tests::a_line_with_only_tags_stays_words ... ok test times_tests::any_line_is_safe ... ok test times_tests::invalid_spaced_twelve_hour_suffix_stays_a_word_after_a_24_hour_time ... ok test times_tests::only_a_day_note_has_times ... ok test tests::two_offline_devices_starting_the_same_day_merge_into_one_note ... ok test times_tests::a_log_line_splits_into_times_words_and_tags ... ok test times_tests::trailing_tags_on_any_line ... ok test tests::no_file_until_the_first_keystroke ... ok test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.38s Running unittests src/lib.rs (target/debug/deps/calternal_engine-ff3aa4aa42431a1a) running 16 tests test hash::tests::key_order_does_not_matter_but_content_does ... ok test tests::a_plugin_cannot_write_outside_its_namespace ... ok test tests::a_retry_runs_once_and_replays_the_result ... ok test tests::a_huge_job_never_delays_anyone ... ok test tests::bad_input_and_unknown_actions_are_friendly ... ok test tests::changes_need_a_key_reads_do_not ... ok test tests::connected_follows_live_views ... ok test tests::identical_calls_at_the_same_moment_run_once ... ok test tests::journal_pages_continue_where_they_stopped ... ok test tests::no_write_is_lost_while_users_are_released_and_reopened ... ok test tests::perf_huge_job_action_latency ... ignored, action latency budgets run on the perf VM via perf/ordinary-latency-vm.sh test tests::a_user_with_a_live_view_or_a_running_action_is_kept ... ok test tests::users_never_see_each_other ... ok test tests::an_action_that_outlives_shutdown_commits_nothing ... ok test tests::shutdown_waits_for_running_actions_and_refuses_new_ones ... ok test tests::an_idle_user_is_released_and_comes_back_with_nothing_lost ... ok test result: ok. 15 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.48s Running unittests src/lib.rs (target/debug/deps/calternal_fixtures-6f98542429b58355) running 5 tests test dates::tests::round_trips_and_formats ... ok test rng::tests::same_seed_same_numbers ... ok test tests::same_seed_same_bytes_other_seed_other_bytes ... ok test tests::looks_like_a_real_home ... ok test tests::full_gate_has_enough_disjoint_samples ... ok test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.77s Running unittests src/main.rs (target/debug/deps/calternal_fixtures-f234eac8403fa749) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_fsio-ee3ae0acac8e7ccc) running 112 tests test beneath::review_754d::review_754d_open_sub_must_keep_its_ancestry ... ok test beneath::tests::paths_that_climb_out_are_refused ... ok test beneath::resolver::tests::missing_openat2_leaves_the_scope_unmeasured_without_fallback ... ok test beneath::resolver::tests::unsupported_handles_exhaust_the_pin_budget_without_publishing ... ok test swap::create_tests::create_preserves_outside_file_appearing_after_absence_check ... ok test beneath::tests::temp_files_persist_without_replacing_and_vanish_when_dropped ... ok test beneath::tests::walking_without_openat2_refuses_symlinks_too ... ok test swap::create_tests::unsupported_exchange_never_replaces_an_existing_file ... ok test tests::atomic_write_replaces_and_leaves_no_temp_files ... ok test tests::a_published_directory_retains_ownership_when_a_parent_flush_fails ... ok test tests::case_only_rename_preserves_a_different_destination ... ok test tests::case_only_collision_rolls_back_or_keeps_the_staged_original ... ok test tests::case_only_rename_works_and_other_clashes_are_refused ... ok test tests::directory_publication_rechecks_changed_inheritance_policy ... ok test tests::delta_rename_must_preserve_file_arriving_after_absence_check ... ok test tests::dropping_data_lock_releases_it_even_with_an_inherited_file_handle ... ok test tests::failed_write_keeps_the_old_file ... ok test tests::a_private_directory_is_invisible_until_exclusive_publication ... ok test tests::many_files_are_replaced_whole ... ok test tests::many_new_files_never_replace_anything ... ok test tests::named_bulk_staging_is_whole_exclusive_and_leaves_no_temporary_name ... ok test tests::names_fold_case_and_unicode_form ... ok test tests::only_one_process_owns_a_data_folder ... ok test tests::prepared_writes_land_only_when_placed ... ok test tests::rename_preserves_a_dangling_destination_symlink ... ok test tests::private_directory_publication_preserves_a_destination_that_arrives ... ok test tests::staged_bulk_keeps_the_destination_default_acl ... ok test tests::unique_names_skip_case_and_form_clashes ... ok test tests::staged_bulk_preserves_occupied_files_and_falls_back_when_staging_is_missing ... ok test tests::write_unless_changed_keeps_someone_elses_version ... ok test usage::admission_tests::scoped_admission_does_not_measure_an_unrelated_unreadable_home ... ok test usage::admission_tests::scoped_admission_recounts_growth_deletion_and_cross_home_moves ... ok test usage::independent_review::independent_crash_child ... ignored, helper process for the controlled SIGKILL test test tests::parallel_bulk_preserves_result_slots_and_observes_the_final_sync ... ok test tests::big_writes_arrive_whole ... ok test usage::independent_review::independent_external_edits_and_startup ... ok test usage::independent_review::independent_kill_between_observation_and_counter_publish ... ok test usage::independent_review::independent_non_utf8_filename_on_startup ... ok test usage::independent_review::independent_folder_and_file_moves ... ok test usage::independent_review::independent_unreadable_regular_file_on_startup ... ok test usage::inode_watch::platform::tests::inode_listener_stops_under_continuous_outside_writes ... ok test usage::reconcile::tests::reconciliation_wait_is_bounded_by_the_scope_deadline ... ok test usage::regressions::existing_directory_moves_trash_restore_delete_match_walk ... ok test usage::independent_review::independent_concurrent_app_and_outside_replacements ... ok test usage::regressions::hard_link_in_place_change_must_match_walk ... ok test usage::regressions::hard_links_created_after_startup_and_alias_replacement_converge ... ok test usage::regressions::native_publish_then_outside_move_must_match_walk ... ok test usage::regressions::stopped_server_changes_are_recounted ... ok test usage::regressions::write_via_hard_link_outside_watch_must_match_walk ... ok test usage::retained_failures::disjoint_failures_and_failed_full_recounts_retain_the_union ... ok test usage::review_754b::health_is_retained_without_io_and_cleared_by_a_successful_full_scan ... ok test usage::review_754b::raw_listing_and_quota_distinguish_two_invalid_names_and_their_display_name ... ok test usage::review_754b::scoped_failure_must_not_forget_other_retained_unmeasured_subtrees ... ok test usage::review_754b::symlinks_and_special_entries_do_not_charge_or_pollute_health ... ok test usage::review_754b::unreadable_sparse_regular_file_is_measured_without_read_access ... ok test usage::review_754c::review_754c_mixed_scoped_retries_retain_exact_union_until_full_success ... ok test usage::review_754c::review_754c_ordinary_edits_during_recounts_do_not_poison_health ... ok test usage::scan::containment::moving_ancestor_invalidates_unchanged_child_descriptor ... ok test usage::scan::containment::removed_directory_is_unmeasured_instead_of_successfully_empty ... ok test usage::scan::containment::rename_at_end_of_walk_invalidates_already_observed_metadata ... ok test usage::scan::property::directory_moved_after_its_recursion_returns_rejects_the_whole_scope ... ok test usage::scan::property::expired_scope_deadline_performs_no_walk ... ok running 1 test quota containment: 32 seeded bind/tmpfs topologies passed test usage::scan::property::mounts::seeded_bind_and_tmpfs_topologies_exclude_mounts_and_recover ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 111 filtered out; finished in 0.08s test usage::scan::property::mounts::seeded_bind_and_tmpfs_topologies_exclude_mounts_and_recover ... ok test usage::scan::property::repeated_users_replacement_exhausts_three_attempts_without_charging ... ok running 1 test test usage::scan::property::review_754d_scan::review_754d_mount_appearing_during_walk_is_currently_in_scope ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 111 filtered out; finished in 0.00s test usage::scan::property::review_754d_scan::review_754d_mount_appearing_during_walk_is_currently_in_scope ... ok test usage::scan::property::review_754d_scan::review_754d_outer_reconciliation_must_bound_restarts ... ok test usage::scan::property::review_754d_scan::review_754d_refresh_must_not_follow_a_replaced_parent_symlink ... ok test usage::scan::property::review_754d_scan::review_754d_returned_directory_charges_bytes_that_returned_with_it ... ok test usage::scan::property::review_754d_scan::review_754d_reused_directory_inode_must_not_certify_a_replacement ... ok cp: failed to clone '/tmp/quota-independent-229202-6/users/b/copy' from '/tmp/quota-independent-229202-6/users/a/sparse': Operation not supported test usage::independent_review::independent_sparse_large_zero_and_symlinks ... ok test usage::regressions::removing_or_moving_the_watched_alias_retains_external_write_coverage ... ok test usage::scan::review_754b_scan::opened_parent_moved_outside_home_must_not_be_walked ... ok test usage::scan::review_754c_scan::review_754c_deletion_after_last_stat_discards_snapshot_and_recount_succeeds ... ok test usage::scan::review_754c_scan::review_754c_raw_names_unreadable_sparse_files_and_symlinks ... ok test usage::scan::review_754c_scan::review_754c_rename_at_each_depth_rejects_then_rescans_and_accepts_return ... ok test usage::scan::review_754c_scan::review_754c_replaced_users_root_cannot_charge_new_outside_files ... ok test usage::scan::review_754c_scan::review_754c_swapping_folders_invalidates_both_open_descriptors ... ok test usage::tests::a_change_that_becomes_unmeasurable_during_recount_reports_failure ... ok test usage::tests::a_move_target_already_seen_by_a_recount_is_not_charged_twice ... ok test usage::tests::a_separate_state_root_counts_what_plugins_report ... ok test usage::tests::application_writes_through_directory_aliases_charge_the_real_file_once ... ok test usage::tests::background_accounts_for_outside_edits_and_directory_moves ... ok test usage::tests::background_does_not_count_symlink_targets ... ok test usage::tests::background_notices_a_created_and_replaced_users_tree ... ok test usage::tests::bulk_writes_and_published_folders_count_without_a_recount ... ok test usage::tests::changes_keep_history_only_during_a_recount_even_after_failure ... ok test usage::tests::incomplete_measurements_remain_visible_until_a_full_recount ... ok test usage::tests::raw_names_survive_startup_and_scoped_repair ... ok test usage::tests::reads_do_not_wait_for_the_counter_writer ... ok test usage::tests::recount_does_not_charge_directory_aliases_twice ... ok test usage::tests::recount_preserves_concurrent_writes_and_deletes ... ok test usage::tests::stale_metadata_cannot_replace_a_newer_update ... ok test usage::tests::unreadable_subtree_is_a_retained_failure_not_zero_usage ... ok test usage::tests::writes_moves_trash_and_purge_update_without_a_recount ... ok running 1 test test usage::watch::independent_review_755::abrupt_stop_during_registration_reopens_acknowledged_files ... ok test usage::watch::independent_review_755::independent_review_755_recount_preserves_native_outside_filenames ... ok test usage::watch::independent_review_755::outside_delete_and_move_after_first_admission_must_release_quota ... ok test usage::watch::independent_review_755::outside_growth_after_first_admission_must_count_before_registration ... ok test usage::watch::independent_review_755::registration_recount_repairs_window_mutations_and_merges_app_writes ... ok test usage::watch::randomized::missing_new_folder_repairs_only_its_home ... ok test usage::watch::randomized::temporary_rename_paths_do_not_repair_unrelated_homes ... ok test usage::independent_review::independent_hardlink_lifecycle ... ok test usage::watch::randomized::write_then_unlink_event_name_repairs_surviving_aliases ... ok test usage::watch::recovery::tests::successful_recount_with_restored_watches_turns_polling_off ... ok test usage::watch::tests::a_file_removed_before_native_watch_install_is_transient ... ok test usage::watch::tests::dropping_usage_wakes_the_idle_event_worker ... ok test usage::watch::tests::fallback_recounts_when_due_even_with_queued_events ... ok test usage::watch::tests::gathering_stops_at_its_deadline_even_with_queued_events ... ok test usage::watch::tests::watcher_registration_never_blocks_startup_or_initial_accounting ... ok test usage::scan::property::two_thousand_seeded_topology_changes_match_final_tree_or_retry ... ok test usage::watch::randomized::ten_thousand_random_operation_sequences_match_full_walk ... ok test usage::scan::property::review_754d_scan::review_754d_twenty_thousand_additional_topologies ... ok test result: ok. 111 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 38.82s Running tests/review_754d_mount.rs (target/debug/deps/review_754d_mount-c647d341d08c48e4) running 2 tests running 1 test running 1 test test review_754d_bind_mount_is_currently_in_scope ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.00s test review_754d_tmpfs_mount_is_currently_in_scope ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 1 filtered out; finished in 0.00s test review_754d_bind_mount_is_currently_in_scope ... ok test review_754d_tmpfs_mount_is_currently_in_scope ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running unittests src/lib.rs (target/debug/deps/calternal_memory-3b65467e6e94a530) running 3 tests test tests::huge_pages_go_off ... ok test tests::nested_bursts_defer_automatic_reclamation_and_unwind_releases_them ... ok test tests::trimming_is_harmless ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_migrate_v0-f1da720039731837) running 37 tests test tests::rules::dry_run_writes_nothing ... ok test tests::rules::m1_custom_daily_title_and_heading_stay ... ok test tests::rules::edited_files_are_never_overwritten_without_asking ... ok test tests::rules::m1_daily_notes_get_day_names_ids_and_lose_generated_headings ... ok test tests::rules::m1_titles_come_from_title_then_h1_then_file_name_and_stay_unique ... ok test tests::rules::m10_tz_markers_go_and_other_zones_convert_to_the_notes_zone ... ok test tests::rules::m2_attachments_that_exist_are_copied_and_relinked ... ok test tests::rules::m2_code_is_never_rewritten ... ok test tests::rules::m2_unresolved_links_stay_as_written_and_are_reported ... ok test tests::rules::m2_wikilinks_always_become_standard_links ... ok test tests::rules::m2_links_are_repaired_by_name_date_title_and_slug ... ok test tests::rules::m3_m5_frontmatter_keys_drop_and_times_convert ... ok test tests::rules::m4_unreferenced_block_ids_go_and_referenced_ones_stay ... ok test tests::rules::m5_unreadable_dates_fall_back ... ok test tests::rules::m6_conflict_copies_are_not_migrated ... ok test tests::rules::m7_tasks_blocks_are_stripped_and_listed ... ok test tests::rules::m8_only_notes_and_linked_files_move ... ok test tests::units::file_names_give_titles ... ok test tests::units::every_v0_time_shape_converts ... ok test tests::units::links_parse_in_every_shape ... ok test tests::units::keys_ignore_case_encoding_quotes_and_md ... ok test tests::units::unix_times_become_india_time ... ok test tzmarker::tests::a_conversion_that_leaves_the_day_is_kept_and_reported ... ok test tzmarker::tests::code_is_never_touched ... ok test tzmarker::tests::berlin_converts_inside_the_day ... ok test tzmarker::tests::eu_summer_time_edges ... ok test tzmarker::tests::day_from_a_date_value ... ok test tzmarker::tests::marker_at_the_end_or_tight_leaves_no_stray_space ... ok test tzmarker::tests::no_zone_in_the_note_means_strip_only ... ok test tzmarker::tests::not_a_marker_is_left_alone ... ok test tzmarker::tests::same_zone_just_goes ... ok test tzmarker::tests::second_run_changes_nothing ... ok test tzmarker::tests::styles_survive_conversion ... ok test tzmarker::tests::unknown_zone_or_a_non_log_line_is_kept_and_counted ... ok test write::tests::migration_preserves_files_changed_after_preflight ... ok test tests::rules::running_twice_gives_the_same_bytes ... ok test tests::no_new_markers::nothing_writes_a_tz_marker ... ok test result: ok. 37 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s Running unittests src/lib.rs (target/debug/deps/calternal_notes-79d3b5f37adfa616) running 461 tests test backlinks::tests::snippets_are_the_trimmed_line ... ok test backlinks::tests::links_are_fold_keys_and_lines ... ok test anchor::tests::lines_by_utf16_index ... ok test anchor::tests::hash_is_plain_sha256_hex ... ok test blocks::tests::finds_list_children_and_heading_sections ... ok test blocks::tests::line_edits ... ok test blocks::tests::shapes_keep_markers ... ok test blocks::tests::titles_from_the_first_sentence ... ok test backlinks::writes::tests::replacement_still_works_while_the_source_index_is_dropped ... ok test backlinks::writes::tests::identical_multisets_do_not_write_even_when_order_changes ... ok test bulk::undo::tests::inverse_restores_the_text ... ok test backlinks::writes::tests::changed_lines_duplicates_and_corrupt_values_are_replaced ... ok test diff::tests::an_inserted_line_starts_at_a_line_start ... ok test bulk::undo::tests::inverse_roundtrips ... ok test bulk::error_tests::legacy_job_reports_hide_stored_source_details ... ok test diff::tests::emoji_positions_are_utf16 ... ok test diff::tests::small_change_is_a_small_edit ... ok test file_stamp::tests::each_field_and_path_byte_affects_the_stamp ... ok test file_stamp::tests::filesystem_metadata_uses_nanoseconds_and_the_exact_relative_path ... ok test file_stamp::tests::stable_vectors_cover_unicode_and_extreme_scalars ... ok test frontmatter::tests::h1_skips_code_and_frontmatter ... ok test frontmatter::tests::quoting ... ok test frontmatter::tests::reads_keys ... ok test frontmatter::tests::set_adds_a_line_or_a_block ... ok test frontmatter::tests::set_changes_only_the_value ... ok test frontmatter::tests::set_is_utf16_aware ... ok test health::tests::anchors ... ok test bulk::error_tests::failed_job_reports_keep_source_details_in_the_server_error ... ok test diff::tests::edits_turn_old_into_new ... ok test history::blobs::tests::photo_chunks_preserve_folding_unknown_fields_and_line_endings ... ok test diff::tests::edits_never_split_a_character ... ok test history::companions::migration_tests::old_staging_allocation_order_migrates_to_application_order ... ok test history::companions::import_cache_tests::prepared_companions_are_applied_on_insert_or_roll_back_with_the_plan ... ok test history::companions::tests::a_companion_lands_with_its_change ... ok test history::companions::import_cache_tests::import_cache_budget_returns_after_success_and_failure ... ok test history::companions::tests::keys_answer_without_reading_bytes_and_cover_older_rows ... ok test history::companions::tests::rejected_companion_writes_leave_history_and_quota_unchanged ... ok test history::companions::tests::staged_rows_wait_for_their_step ... ok test history::companions::tests::retained_bytes_follow_every_change_and_match_a_full_count ... ok test history::memory_tests::batch_admission_failure_dooms_its_lane_before_a_later_write ... ok test history::tests::a_busy_begin_reports_its_cause_without_running_the_job ... ok test history::companions::tests::written_marks_and_unwritten_rows ... ok test history::tests::a_failed_commit_never_replies_with_a_successful_statement_result ... ok test history::tests::a_failed_statement_rolls_back_and_reports_the_cause_to_the_whole_group ... ok test history::tests::a_competing_writer_cannot_invalidate_a_history_write_snapshot ... ok test history::memory_tests::history_payload_bytes_are_bounded_per_home_and_globally_until_completion ... ok test history::tests::appends_are_ordered_and_readable ... ok test history::tests::background_save_bookkeeping_shares_edits_without_early_receipts ... ok test history::tests::pending_save_promotes_to_base ... ok test index::snapshot_tests::bounded_snapshots_keep_owned_rows_across_holes_and_slot_reuse ... ok test index::tests::a_shared_path_answers_with_the_newest_note ... ok test index::tests::a_torn_tail_cannot_swallow_the_next_durable_mapping ... ok test history::tests::disk_full_keeps_the_cause_and_failed_writes_can_be_retried ... ok test index::tests::compacts_when_it_grows ... ok test history::blobs::tests::fifty_two_weekly_edits_share_the_unchanged_original_photo ... ok test index::tests::imported_mappings_share_one_log_append_and_survive_reload ... ok test index::tests::reload_speed ... ignored test index::tests::survives_reload_renames_and_torn_lines ... ok test index::tests::under_finds_exact_paths_and_descendants_with_folded_names ... ok test index::tests::under_keeps_shadowed_paths_for_watcher_removal ... ok test home::background_task_tests::finished_background_tasks_are_reaped_during_normal_operation ... ok test links::escaped_labels::generated_labels_round_trip_and_custom_markup_survives_retargeting ... ok test index::tests::unloads_and_reloads ... ok test links::tests::finds_standard_and_old_style_links ... ok test links::tests::frontmatter_code_samples_do_not_hide_body_links ... ok test links::tests::longer_backtick_fence_does_not_close_on_three_ticks ... ok test links::tests::nested_brackets_in_text ... ok test links::tests::nested_fences_and_indented_code_follow_commonmark_boundaries ... ok test links::tests::normal_fence_control_keeps_links_after_the_block ... ok test links::tests::relative_paths ... ok test links::tests::resolves_relative_to_the_linking_note ... ok ```
Author
Owner

Full workspace tests after the RSS correction, head d23e80b9. 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try again; no #757 rerun. Output verbatim, part 3/4:

test links::tests::retarget_follows_the_title_and_keeps_custom_text ... ok
test links::tests::retarget_from_a_subfolder ... ok
test links::tests::retarget_matches_case_and_unicode_forms ... ok
test links::tests::skips_code_images_and_the_web ... ok
test links::tests::tilde_fence_does_not_close_on_trailing_text ... ok
test links::tests::unclosed_fence_hides_links_through_eof ... ok
test meta::descriptions::tests::a_failed_fresh_plugin_batch_rolls_back_its_note_rows_too ... ok
test index::tests::directory_counts_match_full_scan_after_moves_and_reload ... ok
test meta::fields::tests::cache_upgrade_resets_counts_and_link_rows_and_keeps_note_keys_stable ... ok
test meta::fields::tests::stamp_only_changes_keep_sort_fields_and_tags_but_refresh_links ... ok
test index::tests::answers_like_plain_maps ... ok
test meta::scan::tests::a_prepared_scan_cannot_replace_a_later_announced_live_pin ... ok
test meta::scan::tests::an_identity_returning_after_selection_keeps_its_list_row ... ok
test meta::tests::cursors_round_trip_and_reject_junk ... ok
test meta::scan::tests::stamp_walk_preserves_sparse_and_extreme_keys ... ok
test meta::tests::snippets_skip_frontmatter_and_headings ... ok
test missing::targets::tests::a_name_is_the_file_without_its_folder_and_extension ... ok
test missing::targets::tests::names_rank_exact_then_prefix_then_word_then_inside ... ok
test naming::tests::what_fits_and_what_to_try ... ok
test props::tests::adds_removes_and_quotes_links ... ok
test props::tests::already_typed_text_lists_keep_their_comments_and_quotes ... ok
test meta::tests::fresh_fill_restores_checkpointing_after_success_and_failure ... ok
test props::tests::changes_only_the_touched_key ... ok
test props::tests::obsidian_written_yaml_reads ... ok
test props::tests::list_items_are_written_as_text_too ... ok
test props::tests::outside_keys_win_whole_and_unrelated_pending_keys_survive ... ok
test props::tests::quoting_round_trips_tricky_text ... ok
test props::tests::reads_every_list_form ... ok
test props::tests::refuses_what_it_cannot_read ... ok
test props::tests::review_malformed_unrelated_property_blocks_writes ... ok
test props::tests::review_property_case_override_is_honored ... ok
test props::tests::review_text_yaml_types ... ok
test props::tests::scalar_writes_preserve_types_in_both_directions ... ok
test props::tests::selected_display_keys_keep_unrelated_errors_and_source_order ... ok
test props::tests::simple_display_large_numeric_scalars_agree_with_yaml ... ok
test props::tests::simple_display_mapping_is_a_subset_of_valid_yaml ... ok
test props::tests::simple_display_mapping_keeps_full_validation_for_other_yaml ... ok
test meta::descriptions::tests::common_tag_totals_keep_plugin_visibility_filters_and_cursor_scope ... ok
test props::tests::unicode_display_scalars_agree_with_yaml ... ok
test rename::tests::clash_numbers ... ok
test rename::tests::daily_names ... ok
test rename::tests::h1_is_set_or_added ... ok
test room::acks::tests::varuints_round_trip ... ok
test props::tests::simple_display_scalars_agree_with_the_yaml_validator ... ok
test room::actor::retry_tests::malformed_update_remains_a_permanent_refusal ... ok
test room::edit::tests::checks_bounds_overlap_and_surrogates ... ok
test room::pipeline::memory_tests::actor_api_payload_remains_byte_bounded_when_deferred ... ok
test room::actor::retry_tests::retry_budget_failure_requests_rejoin_without_permanent_refusal ... ok
test room::pipeline::memory_tests::global_retry_bytes_refuse_before_mutation_and_release_after_commit ... ok
test room::pipeline::memory_tests::parked_cross_writer_input_is_journaled_before_its_dependency_releases_it ... ok
test room::pipeline::memory_tests::server_and_outside_updates_are_admitted_before_live_mutation ... ok
test room::pipeline::memory_tests::per_room_retry_bytes_apply_backpressure_before_another_update ... ok
test room::save::tests::concurrent_typists_and_saves_converge ... ok
test room::save::tests::kill_nine_mid_save_recovers_title_and_bytes ... ok
test room::save::tests::review::failed_history_outside_edit_cannot_be_acknowledged_before_recovery ... ok
test room::save::tests::review::failed_history_server_edit_cannot_be_acknowledged_before_recovery ... ok
test room::save::tests::review::group_commit::a_parked_step_two_does_not_answer_save_checks ... ok
test room::save::tests::review::group_commit::a_peer_joining_mid_retry_and_typing_is_saved_once_durable ... ok
test room::save::tests::review::group_commit::a_retried_api_edit_sends_its_changed_event ... ok
test room::save::tests::review::group_commit::an_incomplete_step_two_cannot_release_held_save_checks ... ok
test room::save::tests::review::group_commit::edits_typed_during_a_write_commit_together ... ok
test room::save::tests::review::group_commit::a_failed_write_is_never_overtaken ... ok
test room::save::tests::review::group_commit::lanes::checks_after_each_edit_stay_bounded_per_connection ... ok
test room::save::tests::review::group_commit::lanes::doomed_lanes_do_not_roll_back_others ... ok
test room::save::tests::review::group_commit::lanes::mid_batch_failure_with_other_note_typing ... ok
test room::save::tests::review::group_commit::mixed_paths_keep_applied_order_through_retry ... ok
test room::save::tests::review::group_commit::perf_save_checks_under_twenty_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test links::tests::code_block_spans_match_pulldown_on_random_markdown ... ok
test room::save::tests::review::group_commit::saved_arrives_after_storage_recovers_without_new_activity ... ok
test room::save::tests::review::group_commit::two_notes_keep_their_own_order ... ok
test room::save::tests::review::group_commit::save_checks_during_an_outage_stay_bounded ... ok
test room::save::tests::review::history_durability::independent_652_failed_first_typed_edit_must_precede_second ... ok
test room::save::tests::review::history_durability::independent_652_disk_full_mid_burst_then_recovery ... ok
test room::save::tests::review::history_durability::independent_652_queued_api_requires_replay_after_kill9 ... ok
test room::save::tests::review::history_durability::independent_652_queued_crash_child ... ok
test room::save::tests::review::history_durability::independent_652_real_syncclient_joining_snapshot_is_not_saved ... ok
test room::save::tests::review::history_durability::independent_652_outage_queue_and_save_checks ... ok
test room::save::tests::review::history_durability::metadata_refresh_does_not_block_sync_behind_an_uncommitted_seed ... ok
test room::save::tests::review::history_durability::perf_outage_checks_under_two_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test room::save::tests::review::history_durability::retained_failed_edits_keep_the_file_and_list_cache_dirty ... ok
test room::save::tests::review::review_acknowledged_save_child ... ok
test room::save::tests::review::history_durability::independent_652_real_syncclient_peers_and_restart_replay ... ok
test room::save::tests::review::review_delete_set_before_insert_and_trailing_format_marks ... ok
test room::save::tests::review::review_failed_save_retry_and_outside_retry_keep_base_cache ... ok
test room::save::tests::review::review_kill_nine_after_save_reply_preserves_exact_file_history_and_version ... ok
test props::tests::only_intended_keys_change ... ok
test room::save::tests::review::slow_disk::slow_disk_long ... ignored, measurement for the perf VM, not a gate
test room::save::tests::review::slow_disk::slow_disk_matrix ... ignored, measurement for the perf VM, not a gate
test room::save::tests::save_kill_child ... ok
test room::save::tests::saved_bytes_and_titles_match_the_old_copy_path ... ok
test room::save::tests::title_sync_does_not_decode_the_saved_document ... ok
test scan::classify::tests::folded_aliases_are_changed_without_becoming_vanished ... ok
test scan::state::alias_test::a_cache_alias_is_replaced_without_appending_to_its_target ... ok
test scan::state::tests::a_torn_tail_is_ignored_then_removed_before_append ... ok
test scan::state::tests::appended_edits_deletions_and_compaction_keep_the_snapshot ... ok
test scan::tests::day_ids_name_their_files ... ok
test scan::tests::state_round_trips_and_skips_odd_names ... ok
test scan::tests::unchanged_scan_keeps_state_file_and_changed_scan_appends ... ok
test search::tests::a_note_becomes_a_document ... ok
test search::tests::plain_search_lines_borrow_their_text ... ok
test search::tests::search_lines_keep_link_text_and_replacement_order ... ok
test search::tests::titles_fall_back_to_the_file_name ... ok
test smartline::tests::a_plain_line ... ok
test smartline::tests::only_tags_are_words ... ok
test smartline::tests::trailing_tags_only ... ok
test stamp::tests::formats_with_offset ... ok
test storage_crash::kill9_after_ack_during_split_hdd_save_recovers_exact_text ... ok
test storage_crash::storage_child ... ok
test tags::front::tests::every_way_of_writing_tags ... ok
test tags::merge::tests::property_tags_go_with_their_comma_or_line ... ok
test tags::merge::tests::text_tags_go_with_one_space ... ok
test tags::rewrite::tests::merging_keeps_every_tag_once_at_most ... ok
test tags::rewrite::tests::nothing_to_do_is_no_edits ... ok
test tags::rewrite::tests::only_real_tags_change ... ok
test tags::rewrite::tests::positions_count_utf16 ... ok
test tags::rewrite::tests::properties_change_name_only ... ok
test tags::rewrite::tests::rename_and_back_is_the_same_text ... ok
test tags::rewrite::tests::renames_tags_and_nested_tags_only ... ok
test tags::rewrite::tests::renaming_onto_an_existing_tag_merges ... ok
test tags::rewrite::tests::words_code_links_and_headings ... ok
test tags::scan::tests::code_is_never_tags ... ok
test tags::scan::tests::hash_free_lines_still_open_and_close_code_fences ... ok
test tags::scan::tests::headings_and_quotes_keep_their_tags ... ok
test tags::scan::tests::link_targets_and_addresses_are_never_tags ... ok
test tags::scan::tests::not_tags ... ok
test tags::scan::tests::plain_tags ... ok
test tags::tests::nesting_and_cleaning ... ok
test tags::tests::properties_and_text ... ok
test tests::acks::an_older_lineage_is_refused_before_anything_is_sent ... ok
test tests::acks::checks_advance_in_order_and_cover_every_earlier_edit ... ok
test tests::acks::lineage_survives_a_restart ... ok
test tests::acks::saved_means_the_change_is_in_history ... ok
test tests::anchors::an_anchor_follows_its_block_when_lines_shift ... ok
test tests::anchors::an_edited_block_is_refused_never_the_wrong_one ... ok
test tests::anchors::anchors_need_a_hash_and_block_ids_work ... ok
test tests::anchors::history_folds_typing_and_names_jobs ... ok
test room::save::tests::review::review_title_precedence_edge_matrix ... ok
test tests::anchors::shifting_lines_never_move_the_wrong_block ... ok
test tests::appends::an_append_to_a_long_note_stays_small ... ok
test tests::appends::appends_built_directly_match_the_copy_byte_for_byte ... ok
test tests::appends_review::delete_whole_tail_then_append_matches ... ok
test tests::appends_review::frontmatter_map_write_falls_back ... ok
test tests::appends::typists_and_appends_interleave_on_one_note ... ok
test tests::appends_review::trailing_format_marker_bytes ... ok
test tests::delta_review::deleting_preserves_an_occupied_trash_destination ... ok
test tests::delta_review::delta_independent_same_id_create_retries_joined_must_not_panic ... ok
test tests::appends_review::fuzz_deletes_restarts_parked ... ok
test tests::delta_review::placement_review_bulk_create_cannot_adopt_an_outside_file ... ok
test tests::delta_review::placement_review_bulk_create_retry_keeps_original_version_for_undo ... ok
test tests::delta_review::placement_review_planned_rename_conflict_keeps_links_unchanged ... ok
test tests::delta_review::placement_review_rename_retargets_links_to_the_actual_suffix ... ok
test tests::delta_review::placement_review_undo_rename_conflict_keeps_links_at_the_live_note ... ok
test tests::delta_review::rename_uses_a_suffix_for_an_unindexed_destination ... ok
test tests::delta_review::same_id_sibling_creates_with_different_text_conflict ... ok
test tests::event_visibility::a_failed_list_commit_cannot_announce_a_pin ... ok
test tests::event_visibility::a_scan_cannot_replace_an_announced_live_pin_with_the_old_file ... ok
test tests::delta_review::delta_permanent_deletion_history_failure_must_terminate_scan ... ok
test tests::event_visibility::create ... ok
test tests::event_visibility::create_text ... ok
test tests::event_visibility::delete ... ok
test tests::event_visibility::edit ... ok
test tests::event_visibility::edit_title ... ok
test tests::event_visibility::edit_title_property ... ok
test tests::event_visibility::failed_delete_then_restore_announces_the_current_state ... ok
test tests::event_visibility::move_note ... ok
test room::save::tests::review::group_commit::lanes::a_failing_note_does_not_starve_another_typist ... ok
test tests::event_visibility::outside_create ... ok
test tests::event_visibility::outside_delete ... ok
test tests::event_visibility::outside_edit ... ok
test tests::event_visibility::outside_edit_closed ... ok
test tests::event_visibility::outside_rename ... ok
test tests::event_visibility::regression_backup_discovery_cannot_reuse_a_forgotten_id ... ok
test tests::event_visibility::regression_create_retry_after_restart_uses_file_without_intent ... ok
test tests::event_visibility::regression_create_retry_conflicts_with_different_file_text ... ok
test tests::event_visibility::regression_create_retry_normalizes_server_keys_consistently ... ok
test tests::event_visibility::regression_create_retry_with_crlf_and_bom_keeps_bytes ... ok
test tests::event_visibility::outside_rename_closed ... ok
test tests::event_visibility::regression_create_with_text_still_renames_after_its_h1 ... ok
test tests::event_visibility::regression_create_with_text_writes_only_managed_frontmatter ... ok
test tests::event_visibility::regression_delayed_depart_cannot_clear_gone ... ok
test tests::event_visibility::regression_failed_create_cannot_resurrect_forgotten_id ... ok
test tests::event_visibility::regression_failed_initial_file_write_can_retry ... ok
test tests::event_visibility::regression_failed_save_hint_still_schedules_title_rename ... ok
test tests::event_visibility::regression_failed_unsaved_edit_restart_reconciles_from_journal ... ok
test tests::event_visibility::regression_forgotten_id_stays_gone_after_path_reuse_and_restart ... ok
test tests::event_visibility::regression_initial_file_precedes_visible_identity ... ok
test tests::event_visibility::regression_kill_after_outside_commit_repairs_list_on_start ... ok
test room::save::tests::review::review_fuzz_old_new_bytes_history_versions_and_restarts ... ok
test tests::event_visibility::regression_outside_commit_child ... ok
test tests::event_visibility::regression_purge_commits_path_state_before_unlink_or_event ... ok
test tests::event_visibility::pin ... ok
test tests::event_visibility::rename_public_retry ... ok
test tests::event_visibility::rename_retry ... ok
test tests::event_visibility::rename ... ok
test tests::event_visibility::restore_retry_repairs_a_missing_list_row_for_an_open_room ... ok
test tests::event_visibility::review_create_retry_preserves_initial_text_explicit_id ... ok
test tests::event_visibility::review_create_retry_preserves_initial_text_key_id ... ok
test tests::event_visibility::review_create_retry_without_key_preserves_initial_text_once ... ok
test tests::event_visibility::review_discovery_publication_retries_after_metadata_failure ... ok
test tests::event_visibility::review_load_event_recovers_after_meta_failure ... ok
test tests::event_visibility::review_restore_event_recovers_after_meta_failure ... ok
test tests::event_visibility::review_restore_publication_survives_home_restart ... ok
test tests::event_visibility::round4_create_retry_does_not_wait_for_scan_under_lifecycle ... ok
test tests::event_visibility::regression_delete_failure_then_forget_keeps_gone ... ok
test tests::event_visibility::round4_daily_create_retry_does_not_reenter_lifecycle ... ok
test tests::event_visibility::restore ... ok
test tests::event_visibility::regression_one_reconcile_path_after_failed_edit ... ok
test tests::event_visibility::round4_startup_retries_failed_list_stamp_read ... ok
test tests::event_visibility::round4_startup_retries_journal_discovery_before_file_rows ... ok
test tests::event_visibility::save_background_retry ... ok
test tests::event_visibility::save ... ok
test tests::event_visibility::round4_unreadable_note_does_not_block_healthy_repair_or_ack ... ok
test tests::event_visibility::save_retry ... ok
test tests::event_visibility::saved_list_fields_keep_file_date_fallback_current ... ok
test tests::event_visibility::saved_list_fields_rebuild_after_eviction_and_follow_later_edits ... ok
test tests::event_visibility::saved_rows_keep_file_stamps_for_warm_scans ... ok
test tests::event_visibility::saved_stamp_describes_our_write_before_a_later_outside_write ... ok
test tests::event_visibility::startup_scan_events_are_listed_before_the_scan_finishes ... ok
test tests::event_visibility::unread_external_bytes_do_not_get_a_clean_stamp ... ok
test tests::fanout::a_crash_before_the_seed_is_durable_never_doubles_text ... ok
test tests::fanout::a_crash_between_fan_out_and_disk_loses_nothing ... ok
test tests::event_visibility::unpin ... ok
test tests::fanout::a_version_always_matches_its_text ... ok
test tests::fanout::bursts_converge_and_reach_history ... ok
test tests::fanout::a_first_open_does_not_wait_for_the_disk ... ok
test tests::fresh::a_note_made_with_text_opens_with_its_frontmatter ... ok
test tests::fanout::collaborators_see_typing_before_the_disk ... ok
test tests::held::a_lost_identity_whose_path_was_taken_uses_the_plugins_naming_order ... ok
test tests::held::a_synced_first_file_with_a_lost_index_keeps_its_original_path ... ok
test tests::held::a_held_note_answers_before_its_file_and_writes_it_after ... ok
test tests::held::identity_without_history_is_dropped_on_the_next_start ... ok
test tests::kill9::child ... ok
test tests::kill9::delete_killed_after_its_answer_finishes_once ... ok
test tests::kill9::permanent_delete_after_restore_cannot_delete_the_live_note ... ok
test tests::kill9::quick_delete_restore_survives_kill ... ok
test tests::kill9::quick_restore_delete_survives_kill ... ok
test tests::kill9::restore_delete_forget_does_not_resurrect_after_kill ... ok
test tests::kill9::restore_killed_after_its_answer_finishes_once ... ok
test tests::held::history_without_identity_comes_back_on_the_next_start ... ok
test tests::listing::a_common_tag_pages_the_same_in_every_order ... ok
test tests::listing::filters_by_tag_kind_and_created_range ... ok
test tests::listing::pages_cover_every_note_once_in_a_stable_order ... ok
test tests::listing::pinning_shows_in_the_list_and_unpinning_leaves_no_trace ... ok
test tests::listing::the_first_page_never_waits_for_the_home_to_open ... ok
test tests::listing::the_kept_count_follows_adds_and_deletes ... ok
test tests::listing::the_list_stays_live_with_new_notes_saves_and_outside_edits ... ok
test tests::missing::a_move_outside_is_found_and_relink_repoints_the_links ... ok
test tests::missing::a_path_tells_here_trash_and_gone ... ok
test tests::missing::a_rename_in_the_app_leaves_the_old_path_moved ... ok
test tests::missing::make_from_link_makes_the_note_where_the_link_points_and_undo_takes_it_back ... ok
test tests::missing::never_made_targets_are_offered_with_their_capitals_and_link_counts ... ok
test tests::missing::never_written_paths_are_new_and_bad_ones_too ... ok
test tests::missing::notes_in_the_trash_from_before_are_found ... ok
test tests::missing::restored_with_a_new_name_reads_as_moved ... ok
test tests::opening::a_cold_fill_ends_with_every_index_and_right_answers ... ok
test tests::opening::a_cold_home_indexes_every_file_once_with_its_own_id ... ok
test tests::opening::a_note_never_typed_in_is_still_forgotten_on_restart ... ok
test tests::opening::a_warm_open_announces_only_what_changed_while_closed ... ok
test tests::event_visibility::round4_recorder_outage_bounds_deleted_ids_and_drains_overflow ... ok
test tests::opening::identifying_an_already_indexed_file_never_makes_it_a_copy ... ok
test tests::opening::shutting_down_leaves_the_list_log_empty ... ok
test tests::opening::asking_mid_scan_never_says_not_found_and_never_duplicates_a_day ... ok
test tests::opening::upgrading_without_a_saved_scan_announces_nothing_for_known_notes ... ok
test tests::outside::copied_note_gets_a_fresh_id ... ok
test tests::outside::edit_while_closed_is_merged_on_open ... ok
test tests::outside::missed_watcher_event_is_caught_before_saving ... ok
test tests::outside::outside_create_and_delete ... ok
test tests::outside::outside_edit_while_typing_merges ... ok
test tests::listing::an_idle_home_with_one_thousand_notes_does_not_reconcile ... ok
test tests::outside::outside_rename_keeps_the_id ... ok
test tests::outside::own_saves_are_not_outside_edits ... ok
test tests::peek::an_open_room_answers_with_its_live_text ... ok
test tests::opening::typing_saved_only_in_history_survives_a_restart_before_the_first_save ... ok
test tests::peek::reads_files_without_opening_rooms ... ok
test tests::pending::apply_places_changes_in_any_order ... ok
test tests::peek::returns_at_most_fifty ... ok
test tests::pending::yrs_alone_loses_a_parked_change ... ok
test tests::pending::changes_out_of_order_all_arrive_and_saved_is_true ... ok
test tests::renames::a_format_note_is_never_renamed_after_its_title ... ok
test tests::renames::a_taken_name_gets_a_number_and_daily_notes_keep_theirs ... ok
test tests::renames::a_title_ending_in_a_number_does_not_schedule_a_rename ... ok
test tests::outside::polling_finds_outside_changes ... ok
test tests::renames::backlinks_list_linked_and_unlinked_mentions ... ok
test tests::renames::cancelled_prepared_import_drops_its_private_image_and_replays_the_plan ... ok
test tests::renames::delta2_rename_collision_must_not_apply_dependent_title_edit ... ok
test tests::renames::make_note_moves_the_block_and_undoes_as_one_step ... ok
test tests::renames::move_block_to_another_note_and_back ... ok
test tests::renames::rename_killed_after_title_before_progress_recovers_and_undoes ... ok
test tests::renames::rename_killed_between_move_and_title_recovers_and_undoes ... ok
test tests::renames::rename_moves_the_file_and_repoints_every_link ... ok
test tests::renames::rename_recovery_child ... ok
test tests::renames::saving_a_title_ending_in_a_number_does_not_schedule_a_rename ... ok
test tests::renames::backlinks_follow_edits_and_deletes ... ok
test tests::renames::typing_in_a_linking_note_during_a_rename_is_kept ... ok
test tests::renames::undo_keeps_a_made_note_someone_typed_in ... ok
test tests::rooms::fresh_note_opened_by_many_at_once_is_not_doubled ... ok
test tests::rooms::late_joiner_gets_full_state ... ok
test tests::rooms::patches_use_utf16_positions ... ok
test tests::renames::typing_a_new_title_renames_the_file_after_a_pause ... ok
test tests::rooms::retried_change_applies_once ... ok
test tests::rooms::retried_create_makes_one_note ... ok
test tests::rooms::stale_replace_keeps_newer_typing ... ok
test tests::rooms::typing_survives_a_concurrent_delete ... ok
test tests::round4_review::create_reports_conflict_when_an_outside_file_arrives_before_placement ... ok
test tests::round4_review::independent_creates_joined_in_one_task_do_not_reenter ... ok
test tests::round4_review::scan_propagates_deletion_history_failure_after_reacquiring_lifecycle ... ok
test tests::round4_review::scan_propagates_deletion_history_read_failure_and_retries ... ok
test tests::rooms::random_concurrent_editing_converges_without_duplicates ... ok
test tests::saving::a_write_error_keeps_the_change ... ok
test tests::round4_review::startup_keeps_unknown_notes_incomplete_until_deletion_history_retry ... ok
test tests::saving::an_error_after_the_write_does_not_double_text ... ok
test tests::saving::crash_after_write_does_not_double_text ... ok
test tests::saving::disk_seed_keeps_current_fields_and_repairs_an_edit_with_preserved_timestamps ... ok
test tests::saving::failed_save_keeps_the_change ... ok
test tests::saving::crash_before_write_loses_nothing ... ok
test tests::saving::first_property_edit_and_disk_seed_share_one_durable_transaction ... ok
test tests::saving::first_property_noop_returns_the_durable_seed_version ... ok
test tests::saving::line_endings_and_bom_are_kept ... ok
test tests::saving::first_keystroke_creates_the_file ... ok
test tests::saving::opening_never_writes ... ok
test tests::saving::properties_continue_during_file_io ... ok
test tests::saving::saving_does_not_loop ... ok
test tests::saving::title_and_h1_stay_in_step ... ok
test tests::saving::typing_and_history_continue_during_file_io ... ok
test tests::renames::a_crash_mid_rename_resumes_and_applies_each_edit_once ... ok
test tests::saving::nonstop_typing_still_saves ... ok
test tests::shutdown::a_shutdown_wait_made_after_shutdown_ends_at_once ... ok
test tests::shutdown::healthy_shutdown_settles_pending_typing_before_saving ... ok
test tests::shutdown::no_background_work_starts_after_shutdown ... ok
test tests::shutdown::nothing_opens_or_writes_on_a_home_after_shutdown ... ok
test tests::shutdown::scan_waiters_stay_released_once_shutdown_releases_them ... ok
test tests::shutdown::settlement::shutdown_settlement_failed_promotion_preserves_written_snapshot ... ok
test tests::shutdown::settlement::shutdown_settlement_late_disk_recovery_requires_replay ... ok
test tests::shutdown::settlement::shutdown_settlement_live_file_io_failure_joins_writer ... ok
test tests::shutdown::a_create_that_outlives_shutdown_writes_nothing ... ok
test tests::shutdown::shutdown_cancels_a_reconciler_waiting_for_startup_scan ... ok
test tests::shutdown::shutdown_closes_the_home_history_writer_before_returning ... ok
test tests::shutdown::shutdown_finishes_when_history_writes_keep_failing ... ok
test tests::shutdown::a_create_running_at_shutdown_finishes_before_shutdown_returns ... ok
test tests::shutdown::shutdown_many_full_history_rooms_12 ... ok
test tests::shutdown::shutdown_many_full_history_rooms_100 ... ok
test tests::tags::a_big_tag_rename_allows_typing_while_a_batch_is_held ... ok
test tests::storm::outside_rewrites_during_a_storm_all_land ... ok
test tests::tags::bad_names_are_refused ... ok
test tests::tags::perf_big_tag_rename_keystrokes_under_one_second ... ignored, tag-rename typing latency runs on the perf VM via perf/ordinary-latency-vm.sh
test tests::tags::renames_every_tag_and_undoes_as_one_step ... ok
test tests::tags::typing_during_a_tag_rename_is_kept ... ok
test tests::trash::a_closed_note_is_trashed_without_opening_it ... ok
test tests::trash::a_crash_mid_delete_finishes_on_restart_exactly_once ... ok
test tests::trash::a_file_deleted_outside_goes_to_the_trash ... ok
test tests::trash::a_never_typed_note_is_simply_forgotten ... ok
test tests::trash::a_note_deleted_before_its_first_save_keeps_its_text ... ok
test tests::trash::delete_and_restore_answer_once_per_job_id ... ok
test tests::trash::delete_moves_to_trash_and_undo_brings_it_back ... ok
test tests::trash::delete_replay_with_a_stale_index_keeps_the_only_file ... ok
test tests::trash::delete_waits_for_imported_incoming_links_before_remembering_their_identity ... ok
test tests::trash::folder_rename_and_outside_move_bursts_keep_every_descendant ... ok
test tests::trash::forget_deletes_file_and_history_forever ... ok
test tests::trash::half_written_trash_folders_never_hide_a_live_note ... ok
test tests::trash::outside_copy_finishes_a_metadata_only_interruption ... ok
test tests::trash::restore_durably_indexes_a_note_without_an_embedded_id ... ok
test tests::trash::restore_keeps_id_and_history_and_takes_a_free_name ... ok
test tests::trash::restore_with_a_stale_index_really_moves_the_file_back ... ok
test tests::trash::the_sweep_empties_only_notes_older_than_thirty_days ... ok
test tests::trash::trash_ids_never_reach_another_home ... ok
test tests::trash::trash_pages_newest_first ... ok
test tests::trash::trashed_notes_leave_search_lists_and_backlinks_and_come_back ... ok
test tests::unloading::a_connected_client_keeps_it ... ok
test tests::tags::a_crash_mid_rename_resumes_and_renames_each_tag_once ... ok
test tests::unloading::an_unused_home_unloads_and_answers_after ... ok
test tests::unloading::an_open_note_keeps_it ... ok
test tests::writers::every_writer_at_once_with_the_watcher ... ok
test text::tests::mixed_endings_take_the_majority ... ok
test text::tests::styles_round_trip ... ok
test text::tests::uniform_files_round_trip_exactly ... ok
test trash::tests::a_note_without_details_still_reads ... ok
test trash::tests::candidates_include_notes_and_orphan_details_with_a_bounded_scan ... ok
test trash::tests::details_without_a_note_are_not_a_note ... ok
test trash::tests::missing_details_never_age_trash_from_the_notes_old_mtime ... ok
test trash::tests::outside_copy_has_its_details_when_the_file_first_becomes_readable ... ok
test versions::tests::folds_runs_by_author_kind_and_gap ... ok
test watch::native_tests::bulk_files_only_notify_the_watcher_when_the_whole_note_is_placed ... ok
test watch::native_tests::native_watch_ignores_reads_but_keeps_every_kind_of_outside_change ... ok
test ydoc::seed_tests::initial_seed_matches_yrs_and_accepts_later_utf16_edits ... ok
test ydoc::tests::fork_and_merge_keeps_concurrent_typing ... ok
test ydoc::tests::reapplying_an_update_changes_nothing ... ok
test ydoc::tests::utf16_offsets ... ok
test tests::writers::every_writer_at_once_loses_and_doubles_nothing ... ok
test tests::event_visibility::save_outside_retry ... ok
test tests::shutdown::settlement::shutdown_settlement_state_machine ... ok

test result: ok. 455 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 43.63s

     Running unittests src/main.rs (target/debug/deps/calternal_perf-ccda2fa50fa2d7c5)

running 7 tests
test args::tests::parses_trash_only_mode ... ok
test scenarios::soak::tests::slope_of_a_line ... ok
test scenarios::storm::tests::typing_stops_before_the_newline_ahead_of_outside_lines ... ok
test stats::tests::medians_of_runs_and_pooled_singles ... ok
test stats::tests::summary_max_is_the_largest_observed_sample_across_runs ... ok
test live::tests::frames_round_trip_and_keystrokes_stay_whole ... ok
test scenarios::trash::tests::permanent_deletion_never_removes_a_later_runs_live_note ... ok

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

     Running unittests src/bin/storage-bench.rs (target/debug/deps/storage_bench-4f4305241ae7990c)

running 0 tests

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

     Running unittests src/bin/tasks-bench.rs (target/debug/deps/tasks_bench-8313ffc5153bf696)

running 2 tests
test cold::tests::even_median_uses_both_middle_samples ... ok
test cold::tests::median_keeps_real_growth_despite_a_storage_stall ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_plugin_hello-53ca8ca6107399a0)

running 0 tests

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

     Running unittests src/lib.rs (target/debug/deps/calternal_prefs-069abfa4287cc385)

running 9 tests
test tests::a_change_on_one_device_reaches_the_other ... ok
test tests::keys_are_an_area_then_dotted_parts ... ok
test tests::a_retry_with_the_same_key_acts_once ... ok
test tests::bad_keys_and_big_values_get_friendly_errors ... ok
test tests::people_do_not_share_preferences ... ok
test tests::saving_the_same_value_again_is_quiet ... ok
test tests::quick_saves_from_two_devices_all_land ... ok
test tests::set_then_get_and_survive_a_restart ... ok
test tests::at_most_200_keys_but_existing_ones_can_still_change ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_search-ff67ffa340bd9f12)

running 13 tests
test query::tests::lone_symbols_are_ignored ... ok
test fuzzy::tests::distance_counts_swaps_as_one ... ok
test query::tests::dates_cover_whole_periods ... ok
test read::tests::block_ids_are_found ... ok
test query::tests::words_filters_and_phrases ... ok
test fuzzy::tests::common_typos_are_fixed ... ok
test read::tests::renumbering_shifts_placeholders ... ok
test text::tests::bigrams_cover_unspaced_scripts ... ok
test read::tests::text_matches_like_the_index ... ok
test read::tests::excerpts_mark_matches_in_context ... ok
test text::tests::fold_drops_accents_and_case ... ok
test text::tests::words_keep_indic_vowel_signs ... ok
test schema::tests::an_older_index_gets_its_titles_filled ... ok

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

     Running tests/search.rs (target/debug/deps/search-8eb084de93ee7287)

running 13 tests
test an_empty_search_shows_recent_things ... ok
test every_script_is_searchable ... ok
test behind_answers_at_once_and_catching_up_is_announced_once ... ok
test a_restart_heals_whatever_was_missed ... ok
test perf_search_answer_under_five_hundred_ms ... ignored, first-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh
test filters_by_tag_kind_and_date ... ok
test odd_input_never_breaks_search ... ok
test searches_answer_while_indexing_runs ... ok
test prefixes_and_typos_are_forgiven ... ok
test results_show_why_they_matched_and_where ... ok
test people_only_ever_find_their_own_things ... ok
test titles_first_then_recent_use_then_body ... ok
test the_index_follows_changes_live ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_server-6fec464ffce1c8cf)

running 12 tests
test live::tests::room_join_metadata_has_explicit_byte_bounds ... ok
test rooms::tests::a_message_in_numbered_pieces_arrives_whole ... ok
test rooms::tests::backpressure_refuses_the_room_before_later_checks ... ok
test rooms::tests::assembly_is_bounded_per_connection_and_globally_and_expiry_releases_it ... ok
test rooms::tests::duplicated_missing_and_inconsistent_chunks_never_deliver ... ok
test rooms::tests::frames_round_trip ... ok
test rooms::tests::malformed_chunk_headers_never_allow_later_checks ... ok
test rooms::tests::old_membership_packets_and_results_cannot_reach_a_rejoined_room ... ok
test compress::tests::big_answers_are_compressed_and_small_ones_are_not ... ok
test rooms::tests::pending_and_joined_memberships_share_one_connection_count_bound ... ok
test rooms::tests::wire_nonces_reject_old_frames_joins_and_leaves_without_tombstones ... ok
test rooms::tests::exact_size_limit_is_delivered_but_a_larger_declaration_is_refused ... ok


Full workspace tests after the RSS correction, head d23e80b9. 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try again; no #757 rerun. Output verbatim, part 3/4: ```text test links::tests::retarget_follows_the_title_and_keeps_custom_text ... ok test links::tests::retarget_from_a_subfolder ... ok test links::tests::retarget_matches_case_and_unicode_forms ... ok test links::tests::skips_code_images_and_the_web ... ok test links::tests::tilde_fence_does_not_close_on_trailing_text ... ok test links::tests::unclosed_fence_hides_links_through_eof ... ok test meta::descriptions::tests::a_failed_fresh_plugin_batch_rolls_back_its_note_rows_too ... ok test index::tests::directory_counts_match_full_scan_after_moves_and_reload ... ok test meta::fields::tests::cache_upgrade_resets_counts_and_link_rows_and_keeps_note_keys_stable ... ok test meta::fields::tests::stamp_only_changes_keep_sort_fields_and_tags_but_refresh_links ... ok test index::tests::answers_like_plain_maps ... ok test meta::scan::tests::a_prepared_scan_cannot_replace_a_later_announced_live_pin ... ok test meta::scan::tests::an_identity_returning_after_selection_keeps_its_list_row ... ok test meta::tests::cursors_round_trip_and_reject_junk ... ok test meta::scan::tests::stamp_walk_preserves_sparse_and_extreme_keys ... ok test meta::tests::snippets_skip_frontmatter_and_headings ... ok test missing::targets::tests::a_name_is_the_file_without_its_folder_and_extension ... ok test missing::targets::tests::names_rank_exact_then_prefix_then_word_then_inside ... ok test naming::tests::what_fits_and_what_to_try ... ok test props::tests::adds_removes_and_quotes_links ... ok test props::tests::already_typed_text_lists_keep_their_comments_and_quotes ... ok test meta::tests::fresh_fill_restores_checkpointing_after_success_and_failure ... ok test props::tests::changes_only_the_touched_key ... ok test props::tests::obsidian_written_yaml_reads ... ok test props::tests::list_items_are_written_as_text_too ... ok test props::tests::outside_keys_win_whole_and_unrelated_pending_keys_survive ... ok test props::tests::quoting_round_trips_tricky_text ... ok test props::tests::reads_every_list_form ... ok test props::tests::refuses_what_it_cannot_read ... ok test props::tests::review_malformed_unrelated_property_blocks_writes ... ok test props::tests::review_property_case_override_is_honored ... ok test props::tests::review_text_yaml_types ... ok test props::tests::scalar_writes_preserve_types_in_both_directions ... ok test props::tests::selected_display_keys_keep_unrelated_errors_and_source_order ... ok test props::tests::simple_display_large_numeric_scalars_agree_with_yaml ... ok test props::tests::simple_display_mapping_is_a_subset_of_valid_yaml ... ok test props::tests::simple_display_mapping_keeps_full_validation_for_other_yaml ... ok test meta::descriptions::tests::common_tag_totals_keep_plugin_visibility_filters_and_cursor_scope ... ok test props::tests::unicode_display_scalars_agree_with_yaml ... ok test rename::tests::clash_numbers ... ok test rename::tests::daily_names ... ok test rename::tests::h1_is_set_or_added ... ok test room::acks::tests::varuints_round_trip ... ok test props::tests::simple_display_scalars_agree_with_the_yaml_validator ... ok test room::actor::retry_tests::malformed_update_remains_a_permanent_refusal ... ok test room::edit::tests::checks_bounds_overlap_and_surrogates ... ok test room::pipeline::memory_tests::actor_api_payload_remains_byte_bounded_when_deferred ... ok test room::actor::retry_tests::retry_budget_failure_requests_rejoin_without_permanent_refusal ... ok test room::pipeline::memory_tests::global_retry_bytes_refuse_before_mutation_and_release_after_commit ... ok test room::pipeline::memory_tests::parked_cross_writer_input_is_journaled_before_its_dependency_releases_it ... ok test room::pipeline::memory_tests::server_and_outside_updates_are_admitted_before_live_mutation ... ok test room::pipeline::memory_tests::per_room_retry_bytes_apply_backpressure_before_another_update ... ok test room::save::tests::concurrent_typists_and_saves_converge ... ok test room::save::tests::kill_nine_mid_save_recovers_title_and_bytes ... ok test room::save::tests::review::failed_history_outside_edit_cannot_be_acknowledged_before_recovery ... ok test room::save::tests::review::failed_history_server_edit_cannot_be_acknowledged_before_recovery ... ok test room::save::tests::review::group_commit::a_parked_step_two_does_not_answer_save_checks ... ok test room::save::tests::review::group_commit::a_peer_joining_mid_retry_and_typing_is_saved_once_durable ... ok test room::save::tests::review::group_commit::a_retried_api_edit_sends_its_changed_event ... ok test room::save::tests::review::group_commit::an_incomplete_step_two_cannot_release_held_save_checks ... ok test room::save::tests::review::group_commit::edits_typed_during_a_write_commit_together ... ok test room::save::tests::review::group_commit::a_failed_write_is_never_overtaken ... ok test room::save::tests::review::group_commit::lanes::checks_after_each_edit_stay_bounded_per_connection ... ok test room::save::tests::review::group_commit::lanes::doomed_lanes_do_not_roll_back_others ... ok test room::save::tests::review::group_commit::lanes::mid_batch_failure_with_other_note_typing ... ok test room::save::tests::review::group_commit::mixed_paths_keep_applied_order_through_retry ... ok test room::save::tests::review::group_commit::perf_save_checks_under_twenty_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test links::tests::code_block_spans_match_pulldown_on_random_markdown ... ok test room::save::tests::review::group_commit::saved_arrives_after_storage_recovers_without_new_activity ... ok test room::save::tests::review::group_commit::two_notes_keep_their_own_order ... ok test room::save::tests::review::group_commit::save_checks_during_an_outage_stay_bounded ... ok test room::save::tests::review::history_durability::independent_652_failed_first_typed_edit_must_precede_second ... ok test room::save::tests::review::history_durability::independent_652_disk_full_mid_burst_then_recovery ... ok test room::save::tests::review::history_durability::independent_652_queued_api_requires_replay_after_kill9 ... ok test room::save::tests::review::history_durability::independent_652_queued_crash_child ... ok test room::save::tests::review::history_durability::independent_652_real_syncclient_joining_snapshot_is_not_saved ... ok test room::save::tests::review::history_durability::independent_652_outage_queue_and_save_checks ... ok test room::save::tests::review::history_durability::metadata_refresh_does_not_block_sync_behind_an_uncommitted_seed ... ok test room::save::tests::review::history_durability::perf_outage_checks_under_two_seconds ... ignored, outage-check latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test room::save::tests::review::history_durability::retained_failed_edits_keep_the_file_and_list_cache_dirty ... ok test room::save::tests::review::review_acknowledged_save_child ... ok test room::save::tests::review::history_durability::independent_652_real_syncclient_peers_and_restart_replay ... ok test room::save::tests::review::review_delete_set_before_insert_and_trailing_format_marks ... ok test room::save::tests::review::review_failed_save_retry_and_outside_retry_keep_base_cache ... ok test room::save::tests::review::review_kill_nine_after_save_reply_preserves_exact_file_history_and_version ... ok test props::tests::only_intended_keys_change ... ok test room::save::tests::review::slow_disk::slow_disk_long ... ignored, measurement for the perf VM, not a gate test room::save::tests::review::slow_disk::slow_disk_matrix ... ignored, measurement for the perf VM, not a gate test room::save::tests::save_kill_child ... ok test room::save::tests::saved_bytes_and_titles_match_the_old_copy_path ... ok test room::save::tests::title_sync_does_not_decode_the_saved_document ... ok test scan::classify::tests::folded_aliases_are_changed_without_becoming_vanished ... ok test scan::state::alias_test::a_cache_alias_is_replaced_without_appending_to_its_target ... ok test scan::state::tests::a_torn_tail_is_ignored_then_removed_before_append ... ok test scan::state::tests::appended_edits_deletions_and_compaction_keep_the_snapshot ... ok test scan::tests::day_ids_name_their_files ... ok test scan::tests::state_round_trips_and_skips_odd_names ... ok test scan::tests::unchanged_scan_keeps_state_file_and_changed_scan_appends ... ok test search::tests::a_note_becomes_a_document ... ok test search::tests::plain_search_lines_borrow_their_text ... ok test search::tests::search_lines_keep_link_text_and_replacement_order ... ok test search::tests::titles_fall_back_to_the_file_name ... ok test smartline::tests::a_plain_line ... ok test smartline::tests::only_tags_are_words ... ok test smartline::tests::trailing_tags_only ... ok test stamp::tests::formats_with_offset ... ok test storage_crash::kill9_after_ack_during_split_hdd_save_recovers_exact_text ... ok test storage_crash::storage_child ... ok test tags::front::tests::every_way_of_writing_tags ... ok test tags::merge::tests::property_tags_go_with_their_comma_or_line ... ok test tags::merge::tests::text_tags_go_with_one_space ... ok test tags::rewrite::tests::merging_keeps_every_tag_once_at_most ... ok test tags::rewrite::tests::nothing_to_do_is_no_edits ... ok test tags::rewrite::tests::only_real_tags_change ... ok test tags::rewrite::tests::positions_count_utf16 ... ok test tags::rewrite::tests::properties_change_name_only ... ok test tags::rewrite::tests::rename_and_back_is_the_same_text ... ok test tags::rewrite::tests::renames_tags_and_nested_tags_only ... ok test tags::rewrite::tests::renaming_onto_an_existing_tag_merges ... ok test tags::rewrite::tests::words_code_links_and_headings ... ok test tags::scan::tests::code_is_never_tags ... ok test tags::scan::tests::hash_free_lines_still_open_and_close_code_fences ... ok test tags::scan::tests::headings_and_quotes_keep_their_tags ... ok test tags::scan::tests::link_targets_and_addresses_are_never_tags ... ok test tags::scan::tests::not_tags ... ok test tags::scan::tests::plain_tags ... ok test tags::tests::nesting_and_cleaning ... ok test tags::tests::properties_and_text ... ok test tests::acks::an_older_lineage_is_refused_before_anything_is_sent ... ok test tests::acks::checks_advance_in_order_and_cover_every_earlier_edit ... ok test tests::acks::lineage_survives_a_restart ... ok test tests::acks::saved_means_the_change_is_in_history ... ok test tests::anchors::an_anchor_follows_its_block_when_lines_shift ... ok test tests::anchors::an_edited_block_is_refused_never_the_wrong_one ... ok test tests::anchors::anchors_need_a_hash_and_block_ids_work ... ok test tests::anchors::history_folds_typing_and_names_jobs ... ok test room::save::tests::review::review_title_precedence_edge_matrix ... ok test tests::anchors::shifting_lines_never_move_the_wrong_block ... ok test tests::appends::an_append_to_a_long_note_stays_small ... ok test tests::appends::appends_built_directly_match_the_copy_byte_for_byte ... ok test tests::appends_review::delete_whole_tail_then_append_matches ... ok test tests::appends_review::frontmatter_map_write_falls_back ... ok test tests::appends::typists_and_appends_interleave_on_one_note ... ok test tests::appends_review::trailing_format_marker_bytes ... ok test tests::delta_review::deleting_preserves_an_occupied_trash_destination ... ok test tests::delta_review::delta_independent_same_id_create_retries_joined_must_not_panic ... ok test tests::appends_review::fuzz_deletes_restarts_parked ... ok test tests::delta_review::placement_review_bulk_create_cannot_adopt_an_outside_file ... ok test tests::delta_review::placement_review_bulk_create_retry_keeps_original_version_for_undo ... ok test tests::delta_review::placement_review_planned_rename_conflict_keeps_links_unchanged ... ok test tests::delta_review::placement_review_rename_retargets_links_to_the_actual_suffix ... ok test tests::delta_review::placement_review_undo_rename_conflict_keeps_links_at_the_live_note ... ok test tests::delta_review::rename_uses_a_suffix_for_an_unindexed_destination ... ok test tests::delta_review::same_id_sibling_creates_with_different_text_conflict ... ok test tests::event_visibility::a_failed_list_commit_cannot_announce_a_pin ... ok test tests::event_visibility::a_scan_cannot_replace_an_announced_live_pin_with_the_old_file ... ok test tests::delta_review::delta_permanent_deletion_history_failure_must_terminate_scan ... ok test tests::event_visibility::create ... ok test tests::event_visibility::create_text ... ok test tests::event_visibility::delete ... ok test tests::event_visibility::edit ... ok test tests::event_visibility::edit_title ... ok test tests::event_visibility::edit_title_property ... ok test tests::event_visibility::failed_delete_then_restore_announces_the_current_state ... ok test tests::event_visibility::move_note ... ok test room::save::tests::review::group_commit::lanes::a_failing_note_does_not_starve_another_typist ... ok test tests::event_visibility::outside_create ... ok test tests::event_visibility::outside_delete ... ok test tests::event_visibility::outside_edit ... ok test tests::event_visibility::outside_edit_closed ... ok test tests::event_visibility::outside_rename ... ok test tests::event_visibility::regression_backup_discovery_cannot_reuse_a_forgotten_id ... ok test tests::event_visibility::regression_create_retry_after_restart_uses_file_without_intent ... ok test tests::event_visibility::regression_create_retry_conflicts_with_different_file_text ... ok test tests::event_visibility::regression_create_retry_normalizes_server_keys_consistently ... ok test tests::event_visibility::regression_create_retry_with_crlf_and_bom_keeps_bytes ... ok test tests::event_visibility::outside_rename_closed ... ok test tests::event_visibility::regression_create_with_text_still_renames_after_its_h1 ... ok test tests::event_visibility::regression_create_with_text_writes_only_managed_frontmatter ... ok test tests::event_visibility::regression_delayed_depart_cannot_clear_gone ... ok test tests::event_visibility::regression_failed_create_cannot_resurrect_forgotten_id ... ok test tests::event_visibility::regression_failed_initial_file_write_can_retry ... ok test tests::event_visibility::regression_failed_save_hint_still_schedules_title_rename ... ok test tests::event_visibility::regression_failed_unsaved_edit_restart_reconciles_from_journal ... ok test tests::event_visibility::regression_forgotten_id_stays_gone_after_path_reuse_and_restart ... ok test tests::event_visibility::regression_initial_file_precedes_visible_identity ... ok test tests::event_visibility::regression_kill_after_outside_commit_repairs_list_on_start ... ok test room::save::tests::review::review_fuzz_old_new_bytes_history_versions_and_restarts ... ok test tests::event_visibility::regression_outside_commit_child ... ok test tests::event_visibility::regression_purge_commits_path_state_before_unlink_or_event ... ok test tests::event_visibility::pin ... ok test tests::event_visibility::rename_public_retry ... ok test tests::event_visibility::rename_retry ... ok test tests::event_visibility::rename ... ok test tests::event_visibility::restore_retry_repairs_a_missing_list_row_for_an_open_room ... ok test tests::event_visibility::review_create_retry_preserves_initial_text_explicit_id ... ok test tests::event_visibility::review_create_retry_preserves_initial_text_key_id ... ok test tests::event_visibility::review_create_retry_without_key_preserves_initial_text_once ... ok test tests::event_visibility::review_discovery_publication_retries_after_metadata_failure ... ok test tests::event_visibility::review_load_event_recovers_after_meta_failure ... ok test tests::event_visibility::review_restore_event_recovers_after_meta_failure ... ok test tests::event_visibility::review_restore_publication_survives_home_restart ... ok test tests::event_visibility::round4_create_retry_does_not_wait_for_scan_under_lifecycle ... ok test tests::event_visibility::regression_delete_failure_then_forget_keeps_gone ... ok test tests::event_visibility::round4_daily_create_retry_does_not_reenter_lifecycle ... ok test tests::event_visibility::restore ... ok test tests::event_visibility::regression_one_reconcile_path_after_failed_edit ... ok test tests::event_visibility::round4_startup_retries_failed_list_stamp_read ... ok test tests::event_visibility::round4_startup_retries_journal_discovery_before_file_rows ... ok test tests::event_visibility::save_background_retry ... ok test tests::event_visibility::save ... ok test tests::event_visibility::round4_unreadable_note_does_not_block_healthy_repair_or_ack ... ok test tests::event_visibility::save_retry ... ok test tests::event_visibility::saved_list_fields_keep_file_date_fallback_current ... ok test tests::event_visibility::saved_list_fields_rebuild_after_eviction_and_follow_later_edits ... ok test tests::event_visibility::saved_rows_keep_file_stamps_for_warm_scans ... ok test tests::event_visibility::saved_stamp_describes_our_write_before_a_later_outside_write ... ok test tests::event_visibility::startup_scan_events_are_listed_before_the_scan_finishes ... ok test tests::event_visibility::unread_external_bytes_do_not_get_a_clean_stamp ... ok test tests::fanout::a_crash_before_the_seed_is_durable_never_doubles_text ... ok test tests::fanout::a_crash_between_fan_out_and_disk_loses_nothing ... ok test tests::event_visibility::unpin ... ok test tests::fanout::a_version_always_matches_its_text ... ok test tests::fanout::bursts_converge_and_reach_history ... ok test tests::fanout::a_first_open_does_not_wait_for_the_disk ... ok test tests::fresh::a_note_made_with_text_opens_with_its_frontmatter ... ok test tests::fanout::collaborators_see_typing_before_the_disk ... ok test tests::held::a_lost_identity_whose_path_was_taken_uses_the_plugins_naming_order ... ok test tests::held::a_synced_first_file_with_a_lost_index_keeps_its_original_path ... ok test tests::held::a_held_note_answers_before_its_file_and_writes_it_after ... ok test tests::held::identity_without_history_is_dropped_on_the_next_start ... ok test tests::kill9::child ... ok test tests::kill9::delete_killed_after_its_answer_finishes_once ... ok test tests::kill9::permanent_delete_after_restore_cannot_delete_the_live_note ... ok test tests::kill9::quick_delete_restore_survives_kill ... ok test tests::kill9::quick_restore_delete_survives_kill ... ok test tests::kill9::restore_delete_forget_does_not_resurrect_after_kill ... ok test tests::kill9::restore_killed_after_its_answer_finishes_once ... ok test tests::held::history_without_identity_comes_back_on_the_next_start ... ok test tests::listing::a_common_tag_pages_the_same_in_every_order ... ok test tests::listing::filters_by_tag_kind_and_created_range ... ok test tests::listing::pages_cover_every_note_once_in_a_stable_order ... ok test tests::listing::pinning_shows_in_the_list_and_unpinning_leaves_no_trace ... ok test tests::listing::the_first_page_never_waits_for_the_home_to_open ... ok test tests::listing::the_kept_count_follows_adds_and_deletes ... ok test tests::listing::the_list_stays_live_with_new_notes_saves_and_outside_edits ... ok test tests::missing::a_move_outside_is_found_and_relink_repoints_the_links ... ok test tests::missing::a_path_tells_here_trash_and_gone ... ok test tests::missing::a_rename_in_the_app_leaves_the_old_path_moved ... ok test tests::missing::make_from_link_makes_the_note_where_the_link_points_and_undo_takes_it_back ... ok test tests::missing::never_made_targets_are_offered_with_their_capitals_and_link_counts ... ok test tests::missing::never_written_paths_are_new_and_bad_ones_too ... ok test tests::missing::notes_in_the_trash_from_before_are_found ... ok test tests::missing::restored_with_a_new_name_reads_as_moved ... ok test tests::opening::a_cold_fill_ends_with_every_index_and_right_answers ... ok test tests::opening::a_cold_home_indexes_every_file_once_with_its_own_id ... ok test tests::opening::a_note_never_typed_in_is_still_forgotten_on_restart ... ok test tests::opening::a_warm_open_announces_only_what_changed_while_closed ... ok test tests::event_visibility::round4_recorder_outage_bounds_deleted_ids_and_drains_overflow ... ok test tests::opening::identifying_an_already_indexed_file_never_makes_it_a_copy ... ok test tests::opening::shutting_down_leaves_the_list_log_empty ... ok test tests::opening::asking_mid_scan_never_says_not_found_and_never_duplicates_a_day ... ok test tests::opening::upgrading_without_a_saved_scan_announces_nothing_for_known_notes ... ok test tests::outside::copied_note_gets_a_fresh_id ... ok test tests::outside::edit_while_closed_is_merged_on_open ... ok test tests::outside::missed_watcher_event_is_caught_before_saving ... ok test tests::outside::outside_create_and_delete ... ok test tests::outside::outside_edit_while_typing_merges ... ok test tests::listing::an_idle_home_with_one_thousand_notes_does_not_reconcile ... ok test tests::outside::outside_rename_keeps_the_id ... ok test tests::outside::own_saves_are_not_outside_edits ... ok test tests::peek::an_open_room_answers_with_its_live_text ... ok test tests::opening::typing_saved_only_in_history_survives_a_restart_before_the_first_save ... ok test tests::peek::reads_files_without_opening_rooms ... ok test tests::pending::apply_places_changes_in_any_order ... ok test tests::peek::returns_at_most_fifty ... ok test tests::pending::yrs_alone_loses_a_parked_change ... ok test tests::pending::changes_out_of_order_all_arrive_and_saved_is_true ... ok test tests::renames::a_format_note_is_never_renamed_after_its_title ... ok test tests::renames::a_taken_name_gets_a_number_and_daily_notes_keep_theirs ... ok test tests::renames::a_title_ending_in_a_number_does_not_schedule_a_rename ... ok test tests::outside::polling_finds_outside_changes ... ok test tests::renames::backlinks_list_linked_and_unlinked_mentions ... ok test tests::renames::cancelled_prepared_import_drops_its_private_image_and_replays_the_plan ... ok test tests::renames::delta2_rename_collision_must_not_apply_dependent_title_edit ... ok test tests::renames::make_note_moves_the_block_and_undoes_as_one_step ... ok test tests::renames::move_block_to_another_note_and_back ... ok test tests::renames::rename_killed_after_title_before_progress_recovers_and_undoes ... ok test tests::renames::rename_killed_between_move_and_title_recovers_and_undoes ... ok test tests::renames::rename_moves_the_file_and_repoints_every_link ... ok test tests::renames::rename_recovery_child ... ok test tests::renames::saving_a_title_ending_in_a_number_does_not_schedule_a_rename ... ok test tests::renames::backlinks_follow_edits_and_deletes ... ok test tests::renames::typing_in_a_linking_note_during_a_rename_is_kept ... ok test tests::renames::undo_keeps_a_made_note_someone_typed_in ... ok test tests::rooms::fresh_note_opened_by_many_at_once_is_not_doubled ... ok test tests::rooms::late_joiner_gets_full_state ... ok test tests::rooms::patches_use_utf16_positions ... ok test tests::renames::typing_a_new_title_renames_the_file_after_a_pause ... ok test tests::rooms::retried_change_applies_once ... ok test tests::rooms::retried_create_makes_one_note ... ok test tests::rooms::stale_replace_keeps_newer_typing ... ok test tests::rooms::typing_survives_a_concurrent_delete ... ok test tests::round4_review::create_reports_conflict_when_an_outside_file_arrives_before_placement ... ok test tests::round4_review::independent_creates_joined_in_one_task_do_not_reenter ... ok test tests::round4_review::scan_propagates_deletion_history_failure_after_reacquiring_lifecycle ... ok test tests::round4_review::scan_propagates_deletion_history_read_failure_and_retries ... ok test tests::rooms::random_concurrent_editing_converges_without_duplicates ... ok test tests::saving::a_write_error_keeps_the_change ... ok test tests::round4_review::startup_keeps_unknown_notes_incomplete_until_deletion_history_retry ... ok test tests::saving::an_error_after_the_write_does_not_double_text ... ok test tests::saving::crash_after_write_does_not_double_text ... ok test tests::saving::disk_seed_keeps_current_fields_and_repairs_an_edit_with_preserved_timestamps ... ok test tests::saving::failed_save_keeps_the_change ... ok test tests::saving::crash_before_write_loses_nothing ... ok test tests::saving::first_property_edit_and_disk_seed_share_one_durable_transaction ... ok test tests::saving::first_property_noop_returns_the_durable_seed_version ... ok test tests::saving::line_endings_and_bom_are_kept ... ok test tests::saving::first_keystroke_creates_the_file ... ok test tests::saving::opening_never_writes ... ok test tests::saving::properties_continue_during_file_io ... ok test tests::saving::saving_does_not_loop ... ok test tests::saving::title_and_h1_stay_in_step ... ok test tests::saving::typing_and_history_continue_during_file_io ... ok test tests::renames::a_crash_mid_rename_resumes_and_applies_each_edit_once ... ok test tests::saving::nonstop_typing_still_saves ... ok test tests::shutdown::a_shutdown_wait_made_after_shutdown_ends_at_once ... ok test tests::shutdown::healthy_shutdown_settles_pending_typing_before_saving ... ok test tests::shutdown::no_background_work_starts_after_shutdown ... ok test tests::shutdown::nothing_opens_or_writes_on_a_home_after_shutdown ... ok test tests::shutdown::scan_waiters_stay_released_once_shutdown_releases_them ... ok test tests::shutdown::settlement::shutdown_settlement_failed_promotion_preserves_written_snapshot ... ok test tests::shutdown::settlement::shutdown_settlement_late_disk_recovery_requires_replay ... ok test tests::shutdown::settlement::shutdown_settlement_live_file_io_failure_joins_writer ... ok test tests::shutdown::a_create_that_outlives_shutdown_writes_nothing ... ok test tests::shutdown::shutdown_cancels_a_reconciler_waiting_for_startup_scan ... ok test tests::shutdown::shutdown_closes_the_home_history_writer_before_returning ... ok test tests::shutdown::shutdown_finishes_when_history_writes_keep_failing ... ok test tests::shutdown::a_create_running_at_shutdown_finishes_before_shutdown_returns ... ok test tests::shutdown::shutdown_many_full_history_rooms_12 ... ok test tests::shutdown::shutdown_many_full_history_rooms_100 ... ok test tests::tags::a_big_tag_rename_allows_typing_while_a_batch_is_held ... ok test tests::storm::outside_rewrites_during_a_storm_all_land ... ok test tests::tags::bad_names_are_refused ... ok test tests::tags::perf_big_tag_rename_keystrokes_under_one_second ... ignored, tag-rename typing latency runs on the perf VM via perf/ordinary-latency-vm.sh test tests::tags::renames_every_tag_and_undoes_as_one_step ... ok test tests::tags::typing_during_a_tag_rename_is_kept ... ok test tests::trash::a_closed_note_is_trashed_without_opening_it ... ok test tests::trash::a_crash_mid_delete_finishes_on_restart_exactly_once ... ok test tests::trash::a_file_deleted_outside_goes_to_the_trash ... ok test tests::trash::a_never_typed_note_is_simply_forgotten ... ok test tests::trash::a_note_deleted_before_its_first_save_keeps_its_text ... ok test tests::trash::delete_and_restore_answer_once_per_job_id ... ok test tests::trash::delete_moves_to_trash_and_undo_brings_it_back ... ok test tests::trash::delete_replay_with_a_stale_index_keeps_the_only_file ... ok test tests::trash::delete_waits_for_imported_incoming_links_before_remembering_their_identity ... ok test tests::trash::folder_rename_and_outside_move_bursts_keep_every_descendant ... ok test tests::trash::forget_deletes_file_and_history_forever ... ok test tests::trash::half_written_trash_folders_never_hide_a_live_note ... ok test tests::trash::outside_copy_finishes_a_metadata_only_interruption ... ok test tests::trash::restore_durably_indexes_a_note_without_an_embedded_id ... ok test tests::trash::restore_keeps_id_and_history_and_takes_a_free_name ... ok test tests::trash::restore_with_a_stale_index_really_moves_the_file_back ... ok test tests::trash::the_sweep_empties_only_notes_older_than_thirty_days ... ok test tests::trash::trash_ids_never_reach_another_home ... ok test tests::trash::trash_pages_newest_first ... ok test tests::trash::trashed_notes_leave_search_lists_and_backlinks_and_come_back ... ok test tests::unloading::a_connected_client_keeps_it ... ok test tests::tags::a_crash_mid_rename_resumes_and_renames_each_tag_once ... ok test tests::unloading::an_unused_home_unloads_and_answers_after ... ok test tests::unloading::an_open_note_keeps_it ... ok test tests::writers::every_writer_at_once_with_the_watcher ... ok test text::tests::mixed_endings_take_the_majority ... ok test text::tests::styles_round_trip ... ok test text::tests::uniform_files_round_trip_exactly ... ok test trash::tests::a_note_without_details_still_reads ... ok test trash::tests::candidates_include_notes_and_orphan_details_with_a_bounded_scan ... ok test trash::tests::details_without_a_note_are_not_a_note ... ok test trash::tests::missing_details_never_age_trash_from_the_notes_old_mtime ... ok test trash::tests::outside_copy_has_its_details_when_the_file_first_becomes_readable ... ok test versions::tests::folds_runs_by_author_kind_and_gap ... ok test watch::native_tests::bulk_files_only_notify_the_watcher_when_the_whole_note_is_placed ... ok test watch::native_tests::native_watch_ignores_reads_but_keeps_every_kind_of_outside_change ... ok test ydoc::seed_tests::initial_seed_matches_yrs_and_accepts_later_utf16_edits ... ok test ydoc::tests::fork_and_merge_keeps_concurrent_typing ... ok test ydoc::tests::reapplying_an_update_changes_nothing ... ok test ydoc::tests::utf16_offsets ... ok test tests::writers::every_writer_at_once_loses_and_doubles_nothing ... ok test tests::event_visibility::save_outside_retry ... ok test tests::shutdown::settlement::shutdown_settlement_state_machine ... ok test result: ok. 455 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 43.63s Running unittests src/main.rs (target/debug/deps/calternal_perf-ccda2fa50fa2d7c5) running 7 tests test args::tests::parses_trash_only_mode ... ok test scenarios::soak::tests::slope_of_a_line ... ok test scenarios::storm::tests::typing_stops_before_the_newline_ahead_of_outside_lines ... ok test stats::tests::medians_of_runs_and_pooled_singles ... ok test stats::tests::summary_max_is_the_largest_observed_sample_across_runs ... ok test live::tests::frames_round_trip_and_keystrokes_stay_whole ... ok test scenarios::trash::tests::permanent_deletion_never_removes_a_later_runs_live_note ... ok test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/storage-bench.rs (target/debug/deps/storage_bench-4f4305241ae7990c) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/bin/tasks-bench.rs (target/debug/deps/tasks_bench-8313ffc5153bf696) running 2 tests test cold::tests::even_median_uses_both_middle_samples ... ok test cold::tests::median_keeps_real_growth_despite_a_storage_stall ... ok test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_plugin_hello-53ca8ca6107399a0) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_prefs-069abfa4287cc385) running 9 tests test tests::a_change_on_one_device_reaches_the_other ... ok test tests::keys_are_an_area_then_dotted_parts ... ok test tests::a_retry_with_the_same_key_acts_once ... ok test tests::bad_keys_and_big_values_get_friendly_errors ... ok test tests::people_do_not_share_preferences ... ok test tests::saving_the_same_value_again_is_quiet ... ok test tests::quick_saves_from_two_devices_all_land ... ok test tests::set_then_get_and_survive_a_restart ... ok test tests::at_most_200_keys_but_existing_ones_can_still_change ... ok test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s Running unittests src/lib.rs (target/debug/deps/calternal_search-ff67ffa340bd9f12) running 13 tests test query::tests::lone_symbols_are_ignored ... ok test fuzzy::tests::distance_counts_swaps_as_one ... ok test query::tests::dates_cover_whole_periods ... ok test read::tests::block_ids_are_found ... ok test query::tests::words_filters_and_phrases ... ok test fuzzy::tests::common_typos_are_fixed ... ok test read::tests::renumbering_shifts_placeholders ... ok test text::tests::bigrams_cover_unspaced_scripts ... ok test read::tests::text_matches_like_the_index ... ok test read::tests::excerpts_mark_matches_in_context ... ok test text::tests::fold_drops_accents_and_case ... ok test text::tests::words_keep_indic_vowel_signs ... ok test schema::tests::an_older_index_gets_its_titles_filled ... ok test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s Running tests/search.rs (target/debug/deps/search-8eb084de93ee7287) running 13 tests test an_empty_search_shows_recent_things ... ok test every_script_is_searchable ... ok test behind_answers_at_once_and_catching_up_is_announced_once ... ok test a_restart_heals_whatever_was_missed ... ok test perf_search_answer_under_five_hundred_ms ... ignored, first-search latency budget runs on the perf VM via perf/ordinary-latency-vm.sh test filters_by_tag_kind_and_date ... ok test odd_input_never_breaks_search ... ok test searches_answer_while_indexing_runs ... ok test prefixes_and_typos_are_forgiven ... ok test results_show_why_they_matched_and_where ... ok test people_only_ever_find_their_own_things ... ok test titles_first_then_recent_use_then_body ... ok test the_index_follows_changes_live ... ok test result: ok. 12 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 1.66s Running unittests src/lib.rs (target/debug/deps/calternal_server-6fec464ffce1c8cf) running 12 tests test live::tests::room_join_metadata_has_explicit_byte_bounds ... ok test rooms::tests::a_message_in_numbered_pieces_arrives_whole ... ok test rooms::tests::backpressure_refuses_the_room_before_later_checks ... ok test rooms::tests::assembly_is_bounded_per_connection_and_globally_and_expiry_releases_it ... ok test rooms::tests::duplicated_missing_and_inconsistent_chunks_never_deliver ... ok test rooms::tests::frames_round_trip ... ok test rooms::tests::malformed_chunk_headers_never_allow_later_checks ... ok test rooms::tests::old_membership_packets_and_results_cannot_reach_a_rejoined_room ... ok test compress::tests::big_answers_are_compressed_and_small_ones_are_not ... ok test rooms::tests::pending_and_joined_memberships_share_one_connection_count_bound ... ok test rooms::tests::wire_nonces_reject_old_frames_joins_and_leaves_without_tombstones ... ok test rooms::tests::exact_size_limit_is_delivered_but_a_larger_declaration_is_refused ... ok ```
Author
Owner

Full workspace tests after the RSS correction, head d23e80b9. 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try again; no #757 rerun. Output verbatim, part 4/4:

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

     Running tests/access.rs (target/debug/deps/access-2041f6ab947d6245)

running 1 test
test one_line_per_request_with_no_secrets ... ok

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

     Running tests/live.rs (target/debug/deps/live-e63e1799ca49eca8)

running 6 tests
test health_answers_without_signing_in ... ok
test a_stranger_token_asks_for_a_refresh ... ok
test signed_out_calls_get_a_friendly_refusal ... ok
test errors_carry_codes_not_internals ... ok
test reconnecting_catches_up_from_a_token ... ok
test http_to_journal_to_websocket ... ok

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

     Running tests/signout.rs (target/debug/deps/signout-8523396a0d732a37)

running 1 test
test signing_a_device_out_closes_its_live_socket ... ok

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

     Running tests/web.rs (target/debug/deps/web-a9987759b6b9c7db)

running 3 tests
test files_deep_links_and_the_api_live_side_by_side ... ok
test precompressed_files_are_sent_as_they_are_to_whoever_accepts_them ... ok
test caching_and_security_headers_follow_what_each_file_is ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_store-dc5119e9b339ecbc)

running 9 tests
test tests::a_store_with_a_listener_or_a_copy_is_in_use ... ok
test tests::commits_are_read_back_in_order ... ok
test tests::idempotency_is_saved_with_the_events_or_not_at_all ... ok
test tests::a_held_reader_does_not_block_commits_or_other_readers ... ok
test tests::live_entries_arrive_in_journal_order ... ok
test tests::tokens_survive_a_restart_and_reject_strangers ... ok
test tests::reads_are_capped ... ok
test tests::old_idempotency_records_are_swept_after_commits ... ok
test tests::old_idempotency_records_are_swept_when_the_store_opens ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_tasks-af09346ae519d011)

running 54 tests
test found::day::tests::normalized_days_round_trip_and_keep_order ... ok
test found::tests::borrowed_index_matches_public_parse_for_plain_linked_and_unicode_fields ... ok
test found::tests::checkbox_forms ... ok
test found::tests::days_and_times ... ok
test found::tests::borrowed_index_matches_public_parse_in_commonmark_contexts ... ok
test found::tests::empty_checkbox_labels_keep_lf_and_crlf_line_numbers ... ok
test found::tests::every_unrecognised_status_reads_as_open_without_changing_the_source ... ok
test found::tests::borrowed_index_preserves_task_detection_and_excludes_task_checklists ... ok
test found::tests::finds_checkboxes_everywhere_but_code_and_frontmatter ... ok
test found::tests::first_link_on_the_line_is_the_target ... ok
test found::tests::indexed_display_preserves_unicode_blocks_order_and_duplicate_locations ... ok
test found::tests::malformed_unrelated_yaml_keeps_a_list_valued_status_visible ... ok
test found::tests::lenient_reading ... ok
test found::tests::reads_a_task_note ... ok
test found::tests::reference_titles_keep_commonmark_list_boundaries ... ok
test found::tests::review_code_and_html_are_not_checkboxes ... ok
test found::tests::unicode_marks_and_nested_boxes_survive_candidate_filtering ... ok
test found::tests::linked_tasks_after_fences_keep_their_targets ... ok
test index::codec::tests::arbitrary_paths_round_trip ... ok
test index::codec::tests::line_vectors_and_corruption ... ok
test index::codec::tests::line_locations_round_trip ... ok
test index::flags::tests::every_parsed_combination_round_trips ... ok
test index::row::tests::shared_days_follow_parser_validity_and_preserve_raw_values ... ok
test index::codec::tests::path_padding_and_raw_unicode_do_not_alias ... ok
test index::row::tests::unchanged_fields_skip_writes_but_tag_only_changes_are_stored ... ok

running 1 test
test index::tags_tests::independent_review_755_crash_between_task_and_membership_writes_is_atomic ... ok
test index::tags_tests::tag_changes_and_reused_keys_keep_public_memberships_and_counts ... ok
test found::tests::checkbox_fast_path_matches_commonmark ... ok
test tests::closed_tags_keep_child_groups_and_reopening_restores_sort_fields ... ok
test tests::crash_child ... ok
test tests::field_edits_do_not_reclassify_inbound_checkboxes ... ok
test found::tests::markdown_links_and_task_items_share_commonmark_boundaries ... ok
test tests::linked_boxes_stay_tracked_until_the_last_matching_task_leaves ... ok
test tests::lists_groups_and_counts ... ok
test index::tags_tests::independent_review_755_random_membership_matches_model_and_rolls_back ... ok
test tests::kill_9_during_field_writes_loses_nothing_acknowledged ... ok
test tests::outside_edits_reach_the_lists ... ok
test tests::review_broken_frontmatter_refuses_update ... ok
test tests::rebuild_gives_the_same_rows ... ok
test tests::review_long_code_fence_hides_checkboxes ... ok
test tests::review_outside_edit_during_pending_task_write ... ok
test tests::review_upcoming_with_past_and_future_dates ... ok
test tests::tag_membership::independent_review_755_opens_dev_format_cache_without_changing_files ... ok
test tests::tag_membership::tag_lists_read_new_fields_without_rewriting_membership ... ok
test tests::task_checklist_is_reindexed_when_the_note_stops_being_a_task ... ok
test tests::task_notes_are_hidden_only_from_notes_lists_and_unknown_status_is_kept ... ok
test tests::unreadable_frontmatter_is_shown_but_never_changed ... ok
test tests::untracked_is_open_checkboxes_that_are_not_tasks ... ok
test tests::update_changes_only_its_keys_and_lists_follow_at_once ... ok
test update::tests::checks_values ... ok
test update::tests::null_and_missing_differ ... ok
test tests::a_cold_fill_gives_the_same_rows_as_the_usual_way ... ok
test tests::review_live_list_has_consistent_rows_and_counts ... ok
test tests::order::sql_and_rust_sort_the_same ... ok

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

     Running unittests src/lib.rs (target/debug/deps/calternal_testkit-84605cced32b9d05)

running 0 tests

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

   Doc-tests calternal_attachments

running 0 tests

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

   Doc-tests calternal_auth

running 0 tests

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

   Doc-tests calternal_backdrops

running 0 tests

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

   Doc-tests calternal_contacts

running 0 tests

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

   Doc-tests calternal_contacts_actions

running 0 tests

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

   Doc-tests calternal_core

running 0 tests

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

   Doc-tests calternal_daily

running 0 tests

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

   Doc-tests calternal_engine

running 0 tests

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

   Doc-tests calternal_fixtures

running 0 tests

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

   Doc-tests calternal_fsio

running 0 tests

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

   Doc-tests calternal_memory

running 0 tests

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

   Doc-tests calternal_migrate_v0

running 0 tests

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

   Doc-tests calternal_notes

running 0 tests

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

   Doc-tests calternal_plugin_hello

running 0 tests

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

   Doc-tests calternal_prefs

running 0 tests

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

   Doc-tests calternal_search

running 0 tests

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

   Doc-tests calternal_server

running 0 tests

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

   Doc-tests calternal_store

running 0 tests

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

   Doc-tests calternal_tasks

running 0 tests

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

   Doc-tests calternal_testkit

running 0 tests

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


Gate output verbatim:

full workspace tests exit=0
Full workspace tests after the RSS correction, head d23e80b9. 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try again; no #757 rerun. Output verbatim, part 4/4: ```text test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s Running tests/access.rs (target/debug/deps/access-2041f6ab947d6245) running 1 test test one_line_per_request_with_no_secrets ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/live.rs (target/debug/deps/live-e63e1799ca49eca8) running 6 tests test health_answers_without_signing_in ... ok test a_stranger_token_asks_for_a_refresh ... ok test signed_out_calls_get_a_friendly_refusal ... ok test errors_carry_codes_not_internals ... ok test reconnecting_catches_up_from_a_token ... ok test http_to_journal_to_websocket ... ok test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/signout.rs (target/debug/deps/signout-8523396a0d732a37) running 1 test test signing_a_device_out_closes_its_live_socket ... ok test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s Running tests/web.rs (target/debug/deps/web-a9987759b6b9c7db) running 3 tests test files_deep_links_and_the_api_live_side_by_side ... ok test precompressed_files_are_sent_as_they_are_to_whoever_accepts_them ... ok test caching_and_security_headers_follow_what_each_file_is ... ok test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running unittests src/lib.rs (target/debug/deps/calternal_store-dc5119e9b339ecbc) running 9 tests test tests::a_store_with_a_listener_or_a_copy_is_in_use ... ok test tests::commits_are_read_back_in_order ... ok test tests::idempotency_is_saved_with_the_events_or_not_at_all ... ok test tests::a_held_reader_does_not_block_commits_or_other_readers ... ok test tests::live_entries_arrive_in_journal_order ... ok test tests::tokens_survive_a_restart_and_reject_strangers ... ok test tests::reads_are_capped ... ok test tests::old_idempotency_records_are_swept_after_commits ... ok test tests::old_idempotency_records_are_swept_when_the_store_opens ... ok test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.32s Running unittests src/lib.rs (target/debug/deps/calternal_tasks-af09346ae519d011) running 54 tests test found::day::tests::normalized_days_round_trip_and_keep_order ... ok test found::tests::borrowed_index_matches_public_parse_for_plain_linked_and_unicode_fields ... ok test found::tests::checkbox_forms ... ok test found::tests::days_and_times ... ok test found::tests::borrowed_index_matches_public_parse_in_commonmark_contexts ... ok test found::tests::empty_checkbox_labels_keep_lf_and_crlf_line_numbers ... ok test found::tests::every_unrecognised_status_reads_as_open_without_changing_the_source ... ok test found::tests::borrowed_index_preserves_task_detection_and_excludes_task_checklists ... ok test found::tests::finds_checkboxes_everywhere_but_code_and_frontmatter ... ok test found::tests::first_link_on_the_line_is_the_target ... ok test found::tests::indexed_display_preserves_unicode_blocks_order_and_duplicate_locations ... ok test found::tests::malformed_unrelated_yaml_keeps_a_list_valued_status_visible ... ok test found::tests::lenient_reading ... ok test found::tests::reads_a_task_note ... ok test found::tests::reference_titles_keep_commonmark_list_boundaries ... ok test found::tests::review_code_and_html_are_not_checkboxes ... ok test found::tests::unicode_marks_and_nested_boxes_survive_candidate_filtering ... ok test found::tests::linked_tasks_after_fences_keep_their_targets ... ok test index::codec::tests::arbitrary_paths_round_trip ... ok test index::codec::tests::line_vectors_and_corruption ... ok test index::codec::tests::line_locations_round_trip ... ok test index::flags::tests::every_parsed_combination_round_trips ... ok test index::row::tests::shared_days_follow_parser_validity_and_preserve_raw_values ... ok test index::codec::tests::path_padding_and_raw_unicode_do_not_alias ... ok test index::row::tests::unchanged_fields_skip_writes_but_tag_only_changes_are_stored ... ok running 1 test test index::tags_tests::independent_review_755_crash_between_task_and_membership_writes_is_atomic ... ok test index::tags_tests::tag_changes_and_reused_keys_keep_public_memberships_and_counts ... ok test found::tests::checkbox_fast_path_matches_commonmark ... ok test tests::closed_tags_keep_child_groups_and_reopening_restores_sort_fields ... ok test tests::crash_child ... ok test tests::field_edits_do_not_reclassify_inbound_checkboxes ... ok test found::tests::markdown_links_and_task_items_share_commonmark_boundaries ... ok test tests::linked_boxes_stay_tracked_until_the_last_matching_task_leaves ... ok test tests::lists_groups_and_counts ... ok test index::tags_tests::independent_review_755_random_membership_matches_model_and_rolls_back ... ok test tests::kill_9_during_field_writes_loses_nothing_acknowledged ... ok test tests::outside_edits_reach_the_lists ... ok test tests::review_broken_frontmatter_refuses_update ... ok test tests::rebuild_gives_the_same_rows ... ok test tests::review_long_code_fence_hides_checkboxes ... ok test tests::review_outside_edit_during_pending_task_write ... ok test tests::review_upcoming_with_past_and_future_dates ... ok test tests::tag_membership::independent_review_755_opens_dev_format_cache_without_changing_files ... ok test tests::tag_membership::tag_lists_read_new_fields_without_rewriting_membership ... ok test tests::task_checklist_is_reindexed_when_the_note_stops_being_a_task ... ok test tests::task_notes_are_hidden_only_from_notes_lists_and_unknown_status_is_kept ... ok test tests::unreadable_frontmatter_is_shown_but_never_changed ... ok test tests::untracked_is_open_checkboxes_that_are_not_tasks ... ok test tests::update_changes_only_its_keys_and_lists_follow_at_once ... ok test update::tests::checks_values ... ok test update::tests::null_and_missing_differ ... ok test tests::a_cold_fill_gives_the_same_rows_as_the_usual_way ... ok test tests::review_live_list_has_consistent_rows_and_counts ... ok test tests::order::sql_and_rust_sort_the_same ... ok test result: ok. 54 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.94s Running unittests src/lib.rs (target/debug/deps/calternal_testkit-84605cced32b9d05) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_attachments running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_auth running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_backdrops running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_contacts running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_contacts_actions running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_core running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_daily running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_engine running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_fixtures running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_fsio running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_memory running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_migrate_v0 running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_notes running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_plugin_hello running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_prefs running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_search running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_server running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_store running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_tasks running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Doc-tests calternal_testkit running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s ``` Gate output verbatim: ```text full workspace tests exit=0 ```
Author
Owner

Restarting measurement at head d23e80b949. Full workspace tests passed again (1302 passed, 0 failed, 21 ignored; verbatim output in comments 68995–69009). The Tasks abrupt-stop test passed first try, so no #757 rerun.

Gate output verbatim:

fmt --check exit=0
clippy -D warnings exit=0
release build exit=0
full workspace tests exit=0

Clippy output verbatim:

    Checking calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio)
    Checking calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server)
    Checking calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes)
    Checking calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0)
    Checking calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs)
    Checking calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments)
    Checking calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops)
    Checking calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth)
    Checking calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks)
    Checking calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions)
    Checking calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily)
    Checking calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf)
    Checking calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.81s

Release build output verbatim:

   Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio)
   Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes)
   Compiling calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server)
   Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0)
   Compiling calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs)
   Compiling calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops)
   Compiling calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth)
   Compiling calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments)
   Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks)
   Compiling calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily)
   Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions)
   Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf)
   Compiling calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal)
    Finished `release` profile [optimized] target(s) in 2m 56s

Each size now gets its own complete server report, starting with 100k so an RSS breach is detected earlier. This still runs three fresh reports per size with five warm starts, three cold starts and a 300-second idle window, plus three task comparisons per size. Each single-size server report requires 9 successful internal cache drops; each task comparison requires 30. Fixture path depth and length match the first attempt; no shorter path is used to obtain a pass. Budgets are unchanged. Unexpected gate failures stop the driver between workloads after recording evidence. Known open.note remains fully gated and reported but does not prevent collecting the remaining requested reports.

Restarting measurement at head d23e80b9493b2f3da32ac5c4cd15e09695da41af. Full workspace tests passed again (1302 passed, 0 failed, 21 ignored; verbatim output in comments 68995–69009). The Tasks abrupt-stop test passed first try, so no #757 rerun. Gate output verbatim: ```text fmt --check exit=0 clippy -D warnings exit=0 release build exit=0 full workspace tests exit=0 ``` Clippy output verbatim: ```text Checking calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio) Checking calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server) Checking calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes) Checking calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0) Checking calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs) Checking calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments) Checking calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops) Checking calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth) Checking calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks) Checking calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions) Checking calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily) Checking calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf) Checking calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal) Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.81s ``` Release build output verbatim: ```text Compiling calternal-fsio v0.1.0 (/home/agent/wt/perf-727-honest/crates/fsio) Compiling calternal-notes v0.1.0 (/home/agent/wt/perf-727-honest/crates/notes) Compiling calternal-server v0.1.0 (/home/agent/wt/perf-727-honest/crates/server) Compiling calternal-migrate-v0 v0.1.0 (/home/agent/wt/perf-727-honest/crates/migrate-v0) Compiling calternal-prefs v0.1.0 (/home/agent/wt/perf-727-honest/crates/prefs) Compiling calternal-backdrops v0.1.0 (/home/agent/wt/perf-727-honest/crates/backdrops) Compiling calternal-auth v0.1.0 (/home/agent/wt/perf-727-honest/crates/auth) Compiling calternal-attachments v0.1.0 (/home/agent/wt/perf-727-honest/crates/attachments) Compiling calternal-tasks v0.1.0 (/home/agent/wt/perf-727-honest/crates/tasks) Compiling calternal-daily v0.1.0 (/home/agent/wt/perf-727-honest/crates/daily) Compiling calternal-contacts-actions v0.1.0 (/home/agent/wt/perf-727-honest/crates/contacts-actions) Compiling calternal-perf v0.1.0 (/home/agent/wt/perf-727-honest/crates/perf) Compiling calternal v0.1.0 (/home/agent/wt/perf-727-honest/crates/calternal) Finished `release` profile [optimized] target(s) in 2m 56s ``` Each size now gets its own complete server report, starting with 100k so an RSS breach is detected earlier. This still runs three fresh reports per size with five warm starts, three cold starts and a 300-second idle window, plus three task comparisons per size. Each single-size server report requires 9 successful internal cache drops; each task comparison requires 30. Fixture path depth and length match the first attempt; no shorter path is used to obtain a pass. Budgets are unchanged. Unexpected gate failures stop the driver between workloads after recording evidence. Known open.note remains fully gated and reported but does not prevent collecting the remaining requested reports.
Author
Owner

Fresh full server report 1/3 at 100000 notes on perf-test-01, head d23e80b949. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 680.0 seconds. Fixture Homes and state for this report have been deleted. No budgets changed.

Report verbatim:

Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational)

100000 notes (10000 daily, 422 MB, 50 long notes)

metric unit p50 p95 max noise runs × samples budget
cold.disk_written MB 540 540 540 0% 3 × 1
cold.first_page ms 49.2 67.1 67.1 41% 3 × 1
cold.index s 13.4 16.4 16.4 28% 3 × 1 p95 ≤ 60 ok
cold.mem_peak MB 251 265 265 7% 3 × 1
cold.notes_per_s notes/s 7480 7878 7878 24% 3 × 1 p50 ≥ 2000 ok
cold.startup ms 83.0 89.2 89.2 15% 3 × 1 p95 ≤ 500 ok
home.first_page ms 20.8 28.8 28.8 45% 5 × 1 p95 ≤ 100 ok
home.page ms 0.86 1.36 2.10 37% 5 × 20 p95 ≤ 50 ok
home.page_big ms 134 173 183 7% 5 × 5
home.page_next ms 0.77 1.49 1.69 18% 5 × 20 p95 ≤ 50 ok
home.page_tag ms 4.42 6.12 84.3 3% 5 × 20 p95 ≤ 50 ok
home.page_title ms 0.80 1.19 2.81 27% 5 × 20 p95 ≤ 50 ok
idle.cpu_pct % 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.1 ok
idle.cpu_ticks ticks 0.00 0.00 0.00 0% 1 × 1
idle.rss MB 97.5 97.5 97.5 0% 1 × 1 p95 ≤ 100 ok
idle.threads count 15.0 15.0 15.0 0% 1 × 1
idle.wakeups_per_s /s 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.2 ok
journal.catch_up ms 391 439 439 26% 5 × 1 p95 ≤ 2000 ok
journal.entries count 100370 100728 100728 1% 5 × 1
journal.page ms 3.49 4.84 11.8 27% 5 × 101
load.typing_cpu_pct % 0.45 0.45 0.45 0% 1 × 1 p95 ≤ 2 ok
load.typing_wakeups_per_s /s 62.9 62.9 62.9 0% 1 × 1
mem.after_first_page MB 22.2 22.3 22.3 3% 5 × 1
mem.after_opens MB 98.2 130 130 56% 5 × 1 p95 ≤ 300 ok
mem.after_search MB 119 128 128 15% 5 × 1
mem.idle MB 16.7 17.0 17.0 3% 5 × 1 p95 ≤ 64 ok
mem.peak MB 133 138 138 7% 5 × 1 p95 ≤ 256 ok
open.api_get ms 6.33 14.5 41.9 23% 5 × 24 p95 ≤ 50 ok
open.long_note ms 32.8 42.5 42.5 57% 5 × 1 p95 ≤ 250 ok
open.note ms 3.41 19.8 57.2 85% 5 × 24 p95 ≤ 15 over
search.catch_up s 2.03 2.04 46.1 101% 5 × 3
search.first_query ms 47.0 49.6 49.6 51% 5 × 1 p95 ≤ 1000 ok
search.query ms 2.29 18.0 269 45% 5 × 55 p95 ≤ 100 ok
shutdown ms 114 128 128 37% 5 × 1 p95 ≤ 1000 ok
startup.healthz ms 75.9 115 115 57% 5 × 1 p95 ≤ 300 ok
storm.converge ms 173 177 177 5% 5 × 1 p95 ≤ 2000 ok
storm.disk_written MB 44.5 50.3 50.3 22% 5 × 1 p95 ≤ 50 over target
storm.dropped_clients count 0.00 0.00 0.00 0% 5 × 1 p95 ≤ 0 ok
storm.edits_per_s edits/s 5578 5739 5739 18% 5 × 1 p50 ≥ 1000 ok
storm.outside_edits count 4.00 5.00 5.00 25% 5 × 1
storm.save_ack ms 4.60 9.70 48.8 14% 5 × 10000 p95 ≤ 150 ok
storm.typing s 1.79 2.12 2.12 21% 5 × 1
sync.durable_write ms 11.6 22.4 31.9 3% 5 × 30
sync.round_trip ms 0.25 0.37 1.73 34% 5 × 200 p95 ≤ 10 ok
sync.save_ack ms 2.44 3.35 13.9 4% 5 × 200 p95 ≤ 40 ok
trash.delete ms 47.0 84.1 117 31% 5 × 30
trash.forget ms 5.46 7.85 23.1 14% 5 × 30
trash.restore ms 109 152 178 16% 5 × 30
uploads.response ms 91.4 111 162 2% 5 × 20
uploads.round_trip ms 0.96 1.21 3.11 20% 5 × 200
uploads.save_ack ms 3.17 4.48 19.8 6% 5 × 200

Gate output verbatim:

over target (not gated yet): 100000 notes: storm.disk_written p95 50.3 > 50
over budget: 100000 notes: open.note p95 19.8 > 15
process exit=1

Binary and budget SHA-256:

{
  "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2",
  "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e",
  "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9",
  "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d"
}
Fresh full server report 1/3 at 100000 notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 680.0 seconds. Fixture Homes and state for this report have been deleted. No budgets changed. Report verbatim: Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational) ### 100000 notes (10000 daily, 422 MB, 50 long notes) | metric | unit | p50 | p95 | max | noise | runs × samples | budget | | |---|---|---:|---:|---:|---:|---:|---|---| | cold.disk_written | MB | 540 | 540 | 540 | 0% | 3 × 1 | | | | cold.first_page | ms | 49.2 | 67.1 | 67.1 | 41% | 3 × 1 | | | | cold.index | s | 13.4 | 16.4 | 16.4 | 28% | 3 × 1 | p95 ≤ 60 | ok | | cold.mem_peak | MB | 251 | 265 | 265 | 7% | 3 × 1 | | | | cold.notes_per_s | notes/s | 7480 | 7878 | 7878 | 24% | 3 × 1 | p50 ≥ 2000 | ok | | cold.startup | ms | 83.0 | 89.2 | 89.2 | 15% | 3 × 1 | p95 ≤ 500 | ok | | home.first_page | ms | 20.8 | 28.8 | 28.8 | 45% | 5 × 1 | p95 ≤ 100 | ok | | home.page | ms | 0.86 | 1.36 | 2.10 | 37% | 5 × 20 | p95 ≤ 50 | ok | | home.page_big | ms | 134 | 173 | 183 | 7% | 5 × 5 | | | | home.page_next | ms | 0.77 | 1.49 | 1.69 | 18% | 5 × 20 | p95 ≤ 50 | ok | | home.page_tag | ms | 4.42 | 6.12 | 84.3 | 3% | 5 × 20 | p95 ≤ 50 | ok | | home.page_title | ms | 0.80 | 1.19 | 2.81 | 27% | 5 × 20 | p95 ≤ 50 | ok | | idle.cpu_pct | % | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.1 | ok | | idle.cpu_ticks | ticks | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | | | | idle.rss | MB | 97.5 | 97.5 | 97.5 | 0% | 1 × 1 | p95 ≤ 100 | ok | | idle.threads | count | 15.0 | 15.0 | 15.0 | 0% | 1 × 1 | | | | idle.wakeups_per_s | /s | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.2 | ok | | journal.catch_up | ms | 391 | 439 | 439 | 26% | 5 × 1 | p95 ≤ 2000 | ok | | journal.entries | count | 100370 | 100728 | 100728 | 1% | 5 × 1 | | | | journal.page | ms | 3.49 | 4.84 | 11.8 | 27% | 5 × 101 | | | | load.typing_cpu_pct | % | 0.45 | 0.45 | 0.45 | 0% | 1 × 1 | p95 ≤ 2 | ok | | load.typing_wakeups_per_s | /s | 62.9 | 62.9 | 62.9 | 0% | 1 × 1 | | | | mem.after_first_page | MB | 22.2 | 22.3 | 22.3 | 3% | 5 × 1 | | | | mem.after_opens | MB | 98.2 | 130 | 130 | 56% | 5 × 1 | p95 ≤ 300 | ok | | mem.after_search | MB | 119 | 128 | 128 | 15% | 5 × 1 | | | | mem.idle | MB | 16.7 | 17.0 | 17.0 | 3% | 5 × 1 | p95 ≤ 64 | ok | | mem.peak | MB | 133 | 138 | 138 | 7% | 5 × 1 | p95 ≤ 256 | ok | | open.api_get | ms | 6.33 | 14.5 | 41.9 | 23% | 5 × 24 | p95 ≤ 50 | ok | | open.long_note | ms | 32.8 | 42.5 | 42.5 | 57% | 5 × 1 | p95 ≤ 250 | ok | | open.note | ms | 3.41 | 19.8 | 57.2 | 85% | 5 × 24 | p95 ≤ 15 | **over** | | search.catch_up | s | 2.03 | 2.04 | 46.1 | 101% | 5 × 3 | | | | search.first_query | ms | 47.0 | 49.6 | 49.6 | 51% | 5 × 1 | p95 ≤ 1000 | ok | | search.query | ms | 2.29 | 18.0 | 269 | 45% | 5 × 55 | p95 ≤ 100 | ok | | shutdown | ms | 114 | 128 | 128 | 37% | 5 × 1 | p95 ≤ 1000 | ok | | startup.healthz | ms | 75.9 | 115 | 115 | 57% | 5 × 1 | p95 ≤ 300 | ok | | storm.converge | ms | 173 | 177 | 177 | 5% | 5 × 1 | p95 ≤ 2000 | ok | | storm.disk_written | MB | 44.5 | 50.3 | 50.3 | 22% | 5 × 1 | p95 ≤ 50 | over target | | storm.dropped_clients | count | 0.00 | 0.00 | 0.00 | 0% | 5 × 1 | p95 ≤ 0 | ok | | storm.edits_per_s | edits/s | 5578 | 5739 | 5739 | 18% | 5 × 1 | p50 ≥ 1000 | ok | | storm.outside_edits | count | 4.00 | 5.00 | 5.00 | 25% | 5 × 1 | | | | storm.save_ack | ms | 4.60 | 9.70 | 48.8 | 14% | 5 × 10000 | p95 ≤ 150 | ok | | storm.typing | s | 1.79 | 2.12 | 2.12 | 21% | 5 × 1 | | | | sync.durable_write | ms | 11.6 | 22.4 | 31.9 | 3% | 5 × 30 | | | | sync.round_trip | ms | 0.25 | 0.37 | 1.73 | 34% | 5 × 200 | p95 ≤ 10 | ok | | sync.save_ack | ms | 2.44 | 3.35 | 13.9 | 4% | 5 × 200 | p95 ≤ 40 | ok | | trash.delete | ms | 47.0 | 84.1 | 117 | 31% | 5 × 30 | | | | trash.forget | ms | 5.46 | 7.85 | 23.1 | 14% | 5 × 30 | | | | trash.restore | ms | 109 | 152 | 178 | 16% | 5 × 30 | | | | uploads.response | ms | 91.4 | 111 | 162 | 2% | 5 × 20 | | | | uploads.round_trip | ms | 0.96 | 1.21 | 3.11 | 20% | 5 × 200 | | | | uploads.save_ack | ms | 3.17 | 4.48 | 19.8 | 6% | 5 × 200 | | | Gate output verbatim: ```text over target (not gated yet): 100000 notes: storm.disk_written p95 50.3 > 50 over budget: 100000 notes: open.note p95 19.8 > 15 process exit=1 ``` Binary and budget SHA-256: ```json { "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2", "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e", "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9", "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d" } ```
Author
Owner

Tasks report 1/3 at 100000 base notes plus 100000 task notes on perf-test-01, head d23e80b949. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 736.4 seconds. Fixture Homes and state deleted.

Output verbatim:

making a Home of 100000 notes
adding 100000 task notes
cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f
cold plain run 0: {"ready_ms":24337.589369,"settled_ms":24406.161568000003,"wal_bytes_ready":359626592,"db_bytes_ready":320061440}
cold tasks run 0: {"ready_ms":22617.73093,"settled_ms":22709.896468,"wal_bytes_ready":389727312,"db_bytes_ready":348942336}
cold tasks run 1: {"ready_ms":22588.884516000002,"settled_ms":22645.532313,"wal_bytes_ready":390283512,"db_bytes_ready":348999680}
cold plain run 1: {"ready_ms":21740.764315,"settled_ms":21800.196137,"wal_bytes_ready":360553592,"db_bytes_ready":320016384}
cold plain run 2: {"ready_ms":21608.957202999998,"settled_ms":21665.414283000002,"wal_bytes_ready":359968552,"db_bytes_ready":319930368}
cold tasks run 2: {"ready_ms":22281.407729000002,"settled_ms":22337.626111999998,"wal_bytes_ready":390971552,"db_bytes_ready":349270016}
cold tasks run 3: {"ready_ms":22019.638511,"settled_ms":22085.159268000003,"wal_bytes_ready":390023952,"db_bytes_ready":348938240}
cold plain run 3: {"ready_ms":22085.615534999997,"settled_ms":22147.00233,"wal_bytes_ready":359601872,"db_bytes_ready":320000000}
cold plain run 4: {"ready_ms":21236.965390999998,"settled_ms":21289.827851,"wal_bytes_ready":359523592,"db_bytes_ready":320004096}
cold tasks run 4: {"ready_ms":22496.868448,"settled_ms":22563.90782,"wal_bytes_ready":391321752,"db_bytes_ready":349224960}
cold tasks run 5: {"ready_ms":22538.860881,"settled_ms":22595.458989000002,"wal_bytes_ready":392228152,"db_bytes_ready":349052928}
cold plain run 5: {"ready_ms":21859.554871,"settled_ms":21924.91598,"wal_bytes_ready":360710152,"db_bytes_ready":319954944}
cold plain run 6: {"ready_ms":21534.897345,"settled_ms":21593.889468,"wal_bytes_ready":359082752,"db_bytes_ready":319844352}
cold tasks run 6: {"ready_ms":22951.781012000003,"settled_ms":23016.089122,"wal_bytes_ready":391779072,"db_bytes_ready":349134848}
cold tasks run 7: {"ready_ms":22690.297599,"settled_ms":22746.678436,"wal_bytes_ready":390386512,"db_bytes_ready":349069312}
cold plain run 7: {"ready_ms":21718.662146,"settled_ms":21790.145285000002,"wal_bytes_ready":360116872,"db_bytes_ready":319942656}
cold plain run 8: {"ready_ms":21432.77044,"settled_ms":21485.502739,"wal_bytes_ready":359243432,"db_bytes_ready":319815680}
cold tasks run 8: {"ready_ms":22963.666741,"settled_ms":23036.926702999997,"wal_bytes_ready":392265232,"db_bytes_ready":349167616}
cold tasks run 9: {"ready_ms":22944.202462,"settled_ms":23000.075212,"wal_bytes_ready":391111632,"db_bytes_ready":349089792}
cold plain run 9: {"ready_ms":21873.344227,"settled_ms":21936.58352,"wal_bytes_ready":359832592,"db_bytes_ready":319967232}
cold plain run 10: {"ready_ms":21414.042443,"settled_ms":21475.921187,"wal_bytes_ready":360747232,"db_bytes_ready":320126976}
cold tasks run 10: {"ready_ms":22897.284895999997,"settled_ms":22952.928795,"wal_bytes_ready":389554272,"db_bytes_ready":349011968}
cold tasks run 11: {"ready_ms":22478.395351,"settled_ms":22543.279641,"wal_bytes_ready":392046872,"db_bytes_ready":349147136}
cold plain run 11: {"ready_ms":21514.403495,"settled_ms":21569.062013,"wal_bytes_ready":360186912,"db_bytes_ready":319979520}
cold plain run 12: {"ready_ms":21400.292609,"settled_ms":21447.724637,"wal_bytes_ready":358258752,"db_bytes_ready":319926272}
cold tasks run 12: {"ready_ms":22465.244664,"settled_ms":22537.864786,"wal_bytes_ready":391008632,"db_bytes_ready":349175808}
cold tasks run 13: {"ready_ms":22627.458838,"settled_ms":22681.335547,"wal_bytes_ready":391449472,"db_bytes_ready":349163520}
cold plain run 13: {"ready_ms":21044.110709,"settled_ms":21104.263800999997,"wal_bytes_ready":359956192,"db_bytes_ready":320028672}
cold plain run 14: {"ready_ms":21604.127342,"settled_ms":21655.475627,"wal_bytes_ready":360335232,"db_bytes_ready":320151552}
cold tasks run 14: {"ready_ms":23170.959402,"settled_ms":23229.485241,"wal_bytes_ready":392096312,"db_bytes_ready":349011968}
counts: {"anytime":8543,"incomplete":false,"someday":7957,"tags":{"cooking":1018,"errands":8092,"errands/a":47,"errands/about":50,"errands/after":63,"errands/again":48,"errands/already":71,"errands/always":67,"errands/and":43,"errands/answer":63,"errands/appointment":56,"errands/as":54,"errands/at":53,"errands/backup":55,"errands/before":62,"errands/book":68,"errands/bread":65,"errands/bright":45,"errands/brother":51,"errands/budget":59,"errands/bug":62,"errands/busy":50,"errands/but":58,"errands/buy":57,"errands/café":62,"errands/call":51,"errands/calm":50,"errands/carefully":43,"errands/chai":58,"errands/change":48,"errands/chapter":63,"errands/coffee":75,"errands/cold":69,"errands/colour":47,"errands/dal":64,"errands/dark":46,"errands/design":69,"errands/doctor":56,"errands/draft":45,"errands/early":51,"errands/easy":51,"errands/editor":58,"errands/evening":55,"errands/family":48,"errands/finish":60,"errands/fix":50,"errands/flight":55,"errands/for":58,"errands/forget":60,"errands/friends":44,"errands/from":52,"errands/garden":53,"errands/good":55,"errands/guitar":64,"errands/happy":51,"errands/hard":66,"errands/honestly":60,"errands/hotel":57,"errands/idea":54,"errands/in":57,"errands/into":59,"errands/invoice":64,"errands/is":54,"errands/it":63,"errands/keep":60,"errands/keyboard":53,"errands/kitchen":59,"errands/language":64,"errands/laptop":63,"errands/large":55,"errands/late":67,"errands/lesson":54,"errands/list":62,"errands/loud":56,"errands/lovely":54,"errands/market":52,"errands/maybe":65,"errands/meeting":62,"errands/monsoon":68,"errands/more":52,"errands/morning":56,"errands/move":57,"errands/music":63,"errands/naïve":60,"errands/never":61,"errands/new":47,"errands/notes":55,"errands/of":56,"errands/often":62,"errands/old":61,"errands/on":49,"errands/paper":59,"errands/parents":64,"errands/pencil":72,"errands/phone":65,"errands/plan":62,"errands/practice":52,"errands/probably":55,"errands/project":72,"errands/question":49,"errands/quickly":68,"errands/quiet":57,"errands/rain":60,"errands/read":62,"errands/really":46,"errands/recipe":62,"errands/release":60,"errands/remember":62,"errands/review":52,"errands/rice":64,"errands/run":68,"errands/résumé":54,"errands/screen":70,"errands/sell":48,"errands/sentence":66,"errands/server":56,"errands/sister":63,"errands/sketch":65,"errands/sleep":72,"errands/slowly":44,"errands/small":59,"errands/some":39,"errands/sometimes":57,"errands/song":65,"errands/start":57,"errands/station":40,"errands/still":71,"errands/strange":65,"errands/tea":59,"errands/that":56,"errands/the":51,"errands/they":70,"errands/think":59,"errands/this":55,"errands/tired":47,"errands/to":71,"errands/today":52,"errands/tomorrow":62,"errands/train":56,"errands/travel":48,"errands/try":61,"errands/vegetables":63,"errands/visa":53,"errands/walk":62,"errands/warm":57,"errands/was":57,"errands/we":54,"errands/weather":58,"errands/when":62,"errands/with":44,"errands/word":56,"errands/write":68,"errands/नमस्ते":71,"errands/ദിവസം":60,"errands/☕":51,"errands/日記":64,"errands/🌧️":56,"errands/👍":56,"family":1051,"film":1039,"garden":1054,"health":1048,"home":1043,"ideas":1014,"journal":1068,"learning":981,"money":1015,"music":1072,"people":1070,"project":2139,"project/calternal":1022,"project/house":1149,"reading":987,"run":1030,"todo":1033,"travel":1011,"work":1059,"writing":1067},"today":10766,"untracked":338090,"upcoming":15222}
tasks-bench: 100000 notes + 100000 tasks
cold.index plain 21655 ms, with tasks 22681 ms (+4.7 %)
tasks.describe p50 0.0029 p95 0.0170 ms (with rows: p50 0.0130 p95 0.0323)
               anytime: p50 5.69 p95 6.26 p99 6.63 max 8.19 ms (n=200, 8543 matching)
  anytime_by_child_tag: p50 14.31 p95 15.91 p99 16.61 max 17.35 ms (n=200, 8759 matching)
                counts: p50 1.61 p95 1.73 p99 1.84 max 1.93 ms (n=200, null matching)
               someday: p50 5.40 p95 5.78 p99 5.94 max 6.26 ms (n=200, 7957 matching)
                   tag: p50 13.91 p95 14.90 p99 16.31 max 17.30 ms (n=200, 8092 matching)
                 today: p50 8.46 p95 8.97 p99 9.68 max 10.27 ms (n=200, 10766 matching)
     today_by_priority: p50 7.47 p95 7.77 p99 8.02 max 8.65 ms (n=200, 10766 matching)
             untracked: p50 0.78 p95 0.96 p99 1.00 max 1.05 ms (n=200, null matching)
              upcoming: p50 9.15 p95 10.27 p99 11.61 max 13.66 ms (n=200, 15222 matching)
tasks.update first_touch: p50 5.12 p95 5.95 p99 28.31 max 43.81 ms (n=60)
tasks.update        warm: p50 2.69 p95 5.09 p99 16.42 max 34.54 ms (n=2340)
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS

All measurements and raw cold samples:

{
  "cold_index_ms": {
    "cache_mode": "dropped",
    "endpoint": "shutdown, empty WAL, sync -f complete",
    "growth_pct": 4.737184893417714,
    "plain": 21655.475627,
    "plain_ready_ms": 21604.127342,
    "plain_runs": [
      24406.161568000003,
      21800.196137,
      21665.414283000002,
      22147.00233,
      21289.827851,
      21924.91598,
      21593.889468,
      21790.145285000002,
      21485.502739,
      21936.58352,
      21475.921187,
      21569.062013,
      21447.724637,
      21104.263800999997,
      21655.475627
    ],
    "plain_samples": [
      {
        "db_bytes_ready": 320061440,
        "ready_ms": 24337.589369,
        "settled_ms": 24406.161568000003,
        "wal_bytes_ready": 359626592
      },
      {
        "db_bytes_ready": 320016384,
        "ready_ms": 21740.764315,
        "settled_ms": 21800.196137,
        "wal_bytes_ready": 360553592
      },
      {
        "db_bytes_ready": 319930368,
        "ready_ms": 21608.957202999998,
        "settled_ms": 21665.414283000002,
        "wal_bytes_ready": 359968552
      },
      {
        "db_bytes_ready": 320000000,
        "ready_ms": 22085.615534999997,
        "settled_ms": 22147.00233,
        "wal_bytes_ready": 359601872
      },
      {
        "db_bytes_ready": 320004096,
        "ready_ms": 21236.965390999998,
        "settled_ms": 21289.827851,
        "wal_bytes_ready": 359523592
      },
      {
        "db_bytes_ready": 319954944,
        "ready_ms": 21859.554871,
        "settled_ms": 21924.91598,
        "wal_bytes_ready": 360710152
      },
      {
        "db_bytes_ready": 319844352,
        "ready_ms": 21534.897345,
        "settled_ms": 21593.889468,
        "wal_bytes_ready": 359082752
      },
      {
        "db_bytes_ready": 319942656,
        "ready_ms": 21718.662146,
        "settled_ms": 21790.145285000002,
        "wal_bytes_ready": 360116872
      },
      {
        "db_bytes_ready": 319815680,
        "ready_ms": 21432.77044,
        "settled_ms": 21485.502739,
        "wal_bytes_ready": 359243432
      },
      {
        "db_bytes_ready": 319967232,
        "ready_ms": 21873.344227,
        "settled_ms": 21936.58352,
        "wal_bytes_ready": 359832592
      },
      {
        "db_bytes_ready": 320126976,
        "ready_ms": 21414.042443,
        "settled_ms": 21475.921187,
        "wal_bytes_ready": 360747232
      },
      {
        "db_bytes_ready": 319979520,
        "ready_ms": 21514.403495,
        "settled_ms": 21569.062013,
        "wal_bytes_ready": 360186912
      },
      {
        "db_bytes_ready": 319926272,
        "ready_ms": 21400.292609,
        "settled_ms": 21447.724637,
        "wal_bytes_ready": 358258752
      },
      {
        "db_bytes_ready": 320028672,
        "ready_ms": 21044.110709,
        "settled_ms": 21104.263800999997,
        "wal_bytes_ready": 359956192
      },
      {
        "db_bytes_ready": 320151552,
        "ready_ms": 21604.127342,
        "settled_ms": 21655.475627,
        "wal_bytes_ready": 360335232
      }
    ],
    "tasks": 22681.335547,
    "tasks_ready_ms": 22617.73093,
    "tasks_runs": [
      22709.896468,
      22645.532313,
      22337.626111999998,
      22085.159268000003,
      22563.90782,
      22595.458989000002,
      23016.089122,
      22746.678436,
      23036.926702999997,
      23000.075212,
      22952.928795,
      22543.279641,
      22537.864786,
      22681.335547,
      23229.485241
    ],
    "tasks_samples": [
      {
        "db_bytes_ready": 348942336,
        "ready_ms": 22617.73093,
        "settled_ms": 22709.896468,
        "wal_bytes_ready": 389727312
      },
      {
        "db_bytes_ready": 348999680,
        "ready_ms": 22588.884516000002,
        "settled_ms": 22645.532313,
        "wal_bytes_ready": 390283512
      },
      {
        "db_bytes_ready": 349270016,
        "ready_ms": 22281.407729000002,
        "settled_ms": 22337.626111999998,
        "wal_bytes_ready": 390971552
      },
      {
        "db_bytes_ready": 348938240,
        "ready_ms": 22019.638511,
        "settled_ms": 22085.159268000003,
        "wal_bytes_ready": 390023952
      },
      {
        "db_bytes_ready": 349224960,
        "ready_ms": 22496.868448,
        "settled_ms": 22563.90782,
        "wal_bytes_ready": 391321752
      },
      {
        "db_bytes_ready": 349052928,
        "ready_ms": 22538.860881,
        "settled_ms": 22595.458989000002,
        "wal_bytes_ready": 392228152
      },
      {
        "db_bytes_ready": 349134848,
        "ready_ms": 22951.781012000003,
        "settled_ms": 23016.089122,
        "wal_bytes_ready": 391779072
      },
      {
        "db_bytes_ready": 349069312,
        "ready_ms": 22690.297599,
        "settled_ms": 22746.678436,
        "wal_bytes_ready": 390386512
      },
      {
        "db_bytes_ready": 349167616,
        "ready_ms": 22963.666741,
        "settled_ms": 23036.926702999997,
        "wal_bytes_ready": 392265232
      },
      {
        "db_bytes_ready": 349089792,
        "ready_ms": 22944.202462,
        "settled_ms": 23000.075212,
        "wal_bytes_ready": 391111632
      },
      {
        "db_bytes_ready": 349011968,
        "ready_ms": 22897.284895999997,
        "settled_ms": 22952.928795,
        "wal_bytes_ready": 389554272
      },
      {
        "db_bytes_ready": 349147136,
        "ready_ms": 22478.395351,
        "settled_ms": 22543.279641,
        "wal_bytes_ready": 392046872
      },
      {
        "db_bytes_ready": 349175808,
        "ready_ms": 22465.244664,
        "settled_ms": 22537.864786,
        "wal_bytes_ready": 391008632
      },
      {
        "db_bytes_ready": 349163520,
        "ready_ms": 22627.458838,
        "settled_ms": 22681.335547,
        "wal_bytes_ready": 391449472
      },
      {
        "db_bytes_ready": 349011968,
        "ready_ms": 23170.959402,
        "settled_ms": 23229.485241,
        "wal_bytes_ready": 392096312
      }
    ]
  },
  "describe_ms": {
    "pass": {
      "max": 0.43049800000000005,
      "n": 20000,
      "p50": 0.0029349999999999997,
      "p95": 0.016982,
      "p99": 0.041337
    },
    "pass_and_rows": {
      "max": 0.552388,
      "n": 20000,
      "p50": 0.012974,
      "p95": 0.032281,
      "p99": 0.063079
    }
  },
  "list_ms": {
    "anytime": {
      "matching": 8543,
      "max": 8.194725,
      "n": 200,
      "p50": 5.6936979999999995,
      "p95": 6.255171000000001,
      "p99": 6.628253
    },
    "anytime_by_child_tag": {
      "matching": 8759,
      "max": 17.346217,
      "n": 200,
      "p50": 14.30879,
      "p95": 15.911451999999999,
      "p99": 16.611666
    },
    "counts": {
      "max": 1.9253269999999998,
      "n": 200,
      "p50": 1.610126,
      "p95": 1.734989,
      "p99": 1.839966
    },
    "someday": {
      "matching": 7957,
      "max": 6.26012,
      "n": 200,
      "p50": 5.4047540000000005,
      "p95": 5.7756,
      "p99": 5.942083
    },
    "tag": {
      "matching": 8092,
      "max": 17.304949,
      "n": 200,
      "p50": 13.909561,
      "p95": 14.904981,
      "p99": 16.306154
    },
    "today": {
      "matching": 10766,
      "max": 10.272961,
      "n": 200,
      "p50": 8.455305,
      "p95": 8.973188,
      "p99": 9.678714
    },
    "today_by_priority": {
      "matching": 10766,
      "max": 8.646924,
      "n": 200,
      "p50": 7.467869,
      "p95": 7.7658689999999995,
      "p99": 8.024585
    },
    "untracked": {
      "max": 1.049301,
      "n": 200,
      "p50": 0.781839,
      "p95": 0.9609949999999999,
      "p99": 1.0001
    },
    "upcoming": {
      "matching": 15222,
      "max": 13.655422999999999,
      "n": 200,
      "p50": 9.148627,
      "p95": 10.274982999999999,
      "p99": 11.609881000000001
    }
  },
  "notes": 100000,
  "tasks": 100000,
  "write_ms": {
    "first_touch": {
      "max": 43.808768,
      "n": 60,
      "p50": 5.123014,
      "p95": 5.94601,
      "p99": 28.305083000000003
    },
    "warm": {
      "max": 34.541999,
      "n": 2340,
      "p50": 2.694121,
      "p95": 5.094801,
      "p99": 16.424503
    }
  }
}

Gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
Tasks report 1/3 at 100000 base notes plus 100000 task notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 736.4 seconds. Fixture Homes and state deleted. Output verbatim: ```text making a Home of 100000 notes adding 100000 task notes cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f cold plain run 0: {"ready_ms":24337.589369,"settled_ms":24406.161568000003,"wal_bytes_ready":359626592,"db_bytes_ready":320061440} cold tasks run 0: {"ready_ms":22617.73093,"settled_ms":22709.896468,"wal_bytes_ready":389727312,"db_bytes_ready":348942336} cold tasks run 1: {"ready_ms":22588.884516000002,"settled_ms":22645.532313,"wal_bytes_ready":390283512,"db_bytes_ready":348999680} cold plain run 1: {"ready_ms":21740.764315,"settled_ms":21800.196137,"wal_bytes_ready":360553592,"db_bytes_ready":320016384} cold plain run 2: {"ready_ms":21608.957202999998,"settled_ms":21665.414283000002,"wal_bytes_ready":359968552,"db_bytes_ready":319930368} cold tasks run 2: {"ready_ms":22281.407729000002,"settled_ms":22337.626111999998,"wal_bytes_ready":390971552,"db_bytes_ready":349270016} cold tasks run 3: {"ready_ms":22019.638511,"settled_ms":22085.159268000003,"wal_bytes_ready":390023952,"db_bytes_ready":348938240} cold plain run 3: {"ready_ms":22085.615534999997,"settled_ms":22147.00233,"wal_bytes_ready":359601872,"db_bytes_ready":320000000} cold plain run 4: {"ready_ms":21236.965390999998,"settled_ms":21289.827851,"wal_bytes_ready":359523592,"db_bytes_ready":320004096} cold tasks run 4: {"ready_ms":22496.868448,"settled_ms":22563.90782,"wal_bytes_ready":391321752,"db_bytes_ready":349224960} cold tasks run 5: {"ready_ms":22538.860881,"settled_ms":22595.458989000002,"wal_bytes_ready":392228152,"db_bytes_ready":349052928} cold plain run 5: {"ready_ms":21859.554871,"settled_ms":21924.91598,"wal_bytes_ready":360710152,"db_bytes_ready":319954944} cold plain run 6: {"ready_ms":21534.897345,"settled_ms":21593.889468,"wal_bytes_ready":359082752,"db_bytes_ready":319844352} cold tasks run 6: {"ready_ms":22951.781012000003,"settled_ms":23016.089122,"wal_bytes_ready":391779072,"db_bytes_ready":349134848} cold tasks run 7: {"ready_ms":22690.297599,"settled_ms":22746.678436,"wal_bytes_ready":390386512,"db_bytes_ready":349069312} cold plain run 7: {"ready_ms":21718.662146,"settled_ms":21790.145285000002,"wal_bytes_ready":360116872,"db_bytes_ready":319942656} cold plain run 8: {"ready_ms":21432.77044,"settled_ms":21485.502739,"wal_bytes_ready":359243432,"db_bytes_ready":319815680} cold tasks run 8: {"ready_ms":22963.666741,"settled_ms":23036.926702999997,"wal_bytes_ready":392265232,"db_bytes_ready":349167616} cold tasks run 9: {"ready_ms":22944.202462,"settled_ms":23000.075212,"wal_bytes_ready":391111632,"db_bytes_ready":349089792} cold plain run 9: {"ready_ms":21873.344227,"settled_ms":21936.58352,"wal_bytes_ready":359832592,"db_bytes_ready":319967232} cold plain run 10: {"ready_ms":21414.042443,"settled_ms":21475.921187,"wal_bytes_ready":360747232,"db_bytes_ready":320126976} cold tasks run 10: {"ready_ms":22897.284895999997,"settled_ms":22952.928795,"wal_bytes_ready":389554272,"db_bytes_ready":349011968} cold tasks run 11: {"ready_ms":22478.395351,"settled_ms":22543.279641,"wal_bytes_ready":392046872,"db_bytes_ready":349147136} cold plain run 11: {"ready_ms":21514.403495,"settled_ms":21569.062013,"wal_bytes_ready":360186912,"db_bytes_ready":319979520} cold plain run 12: {"ready_ms":21400.292609,"settled_ms":21447.724637,"wal_bytes_ready":358258752,"db_bytes_ready":319926272} cold tasks run 12: {"ready_ms":22465.244664,"settled_ms":22537.864786,"wal_bytes_ready":391008632,"db_bytes_ready":349175808} cold tasks run 13: {"ready_ms":22627.458838,"settled_ms":22681.335547,"wal_bytes_ready":391449472,"db_bytes_ready":349163520} cold plain run 13: {"ready_ms":21044.110709,"settled_ms":21104.263800999997,"wal_bytes_ready":359956192,"db_bytes_ready":320028672} cold plain run 14: {"ready_ms":21604.127342,"settled_ms":21655.475627,"wal_bytes_ready":360335232,"db_bytes_ready":320151552} cold tasks run 14: {"ready_ms":23170.959402,"settled_ms":23229.485241,"wal_bytes_ready":392096312,"db_bytes_ready":349011968} counts: {"anytime":8543,"incomplete":false,"someday":7957,"tags":{"cooking":1018,"errands":8092,"errands/a":47,"errands/about":50,"errands/after":63,"errands/again":48,"errands/already":71,"errands/always":67,"errands/and":43,"errands/answer":63,"errands/appointment":56,"errands/as":54,"errands/at":53,"errands/backup":55,"errands/before":62,"errands/book":68,"errands/bread":65,"errands/bright":45,"errands/brother":51,"errands/budget":59,"errands/bug":62,"errands/busy":50,"errands/but":58,"errands/buy":57,"errands/café":62,"errands/call":51,"errands/calm":50,"errands/carefully":43,"errands/chai":58,"errands/change":48,"errands/chapter":63,"errands/coffee":75,"errands/cold":69,"errands/colour":47,"errands/dal":64,"errands/dark":46,"errands/design":69,"errands/doctor":56,"errands/draft":45,"errands/early":51,"errands/easy":51,"errands/editor":58,"errands/evening":55,"errands/family":48,"errands/finish":60,"errands/fix":50,"errands/flight":55,"errands/for":58,"errands/forget":60,"errands/friends":44,"errands/from":52,"errands/garden":53,"errands/good":55,"errands/guitar":64,"errands/happy":51,"errands/hard":66,"errands/honestly":60,"errands/hotel":57,"errands/idea":54,"errands/in":57,"errands/into":59,"errands/invoice":64,"errands/is":54,"errands/it":63,"errands/keep":60,"errands/keyboard":53,"errands/kitchen":59,"errands/language":64,"errands/laptop":63,"errands/large":55,"errands/late":67,"errands/lesson":54,"errands/list":62,"errands/loud":56,"errands/lovely":54,"errands/market":52,"errands/maybe":65,"errands/meeting":62,"errands/monsoon":68,"errands/more":52,"errands/morning":56,"errands/move":57,"errands/music":63,"errands/naïve":60,"errands/never":61,"errands/new":47,"errands/notes":55,"errands/of":56,"errands/often":62,"errands/old":61,"errands/on":49,"errands/paper":59,"errands/parents":64,"errands/pencil":72,"errands/phone":65,"errands/plan":62,"errands/practice":52,"errands/probably":55,"errands/project":72,"errands/question":49,"errands/quickly":68,"errands/quiet":57,"errands/rain":60,"errands/read":62,"errands/really":46,"errands/recipe":62,"errands/release":60,"errands/remember":62,"errands/review":52,"errands/rice":64,"errands/run":68,"errands/résumé":54,"errands/screen":70,"errands/sell":48,"errands/sentence":66,"errands/server":56,"errands/sister":63,"errands/sketch":65,"errands/sleep":72,"errands/slowly":44,"errands/small":59,"errands/some":39,"errands/sometimes":57,"errands/song":65,"errands/start":57,"errands/station":40,"errands/still":71,"errands/strange":65,"errands/tea":59,"errands/that":56,"errands/the":51,"errands/they":70,"errands/think":59,"errands/this":55,"errands/tired":47,"errands/to":71,"errands/today":52,"errands/tomorrow":62,"errands/train":56,"errands/travel":48,"errands/try":61,"errands/vegetables":63,"errands/visa":53,"errands/walk":62,"errands/warm":57,"errands/was":57,"errands/we":54,"errands/weather":58,"errands/when":62,"errands/with":44,"errands/word":56,"errands/write":68,"errands/नमस्ते":71,"errands/ദിവസം":60,"errands/☕":51,"errands/日記":64,"errands/🌧️":56,"errands/👍":56,"family":1051,"film":1039,"garden":1054,"health":1048,"home":1043,"ideas":1014,"journal":1068,"learning":981,"money":1015,"music":1072,"people":1070,"project":2139,"project/calternal":1022,"project/house":1149,"reading":987,"run":1030,"todo":1033,"travel":1011,"work":1059,"writing":1067},"today":10766,"untracked":338090,"upcoming":15222} tasks-bench: 100000 notes + 100000 tasks cold.index plain 21655 ms, with tasks 22681 ms (+4.7 %) tasks.describe p50 0.0029 p95 0.0170 ms (with rows: p50 0.0130 p95 0.0323) anytime: p50 5.69 p95 6.26 p99 6.63 max 8.19 ms (n=200, 8543 matching) anytime_by_child_tag: p50 14.31 p95 15.91 p99 16.61 max 17.35 ms (n=200, 8759 matching) counts: p50 1.61 p95 1.73 p99 1.84 max 1.93 ms (n=200, null matching) someday: p50 5.40 p95 5.78 p99 5.94 max 6.26 ms (n=200, 7957 matching) tag: p50 13.91 p95 14.90 p99 16.31 max 17.30 ms (n=200, 8092 matching) today: p50 8.46 p95 8.97 p99 9.68 max 10.27 ms (n=200, 10766 matching) today_by_priority: p50 7.47 p95 7.77 p99 8.02 max 8.65 ms (n=200, 10766 matching) untracked: p50 0.78 p95 0.96 p99 1.00 max 1.05 ms (n=200, null matching) upcoming: p50 9.15 p95 10.27 p99 11.61 max 13.66 ms (n=200, 15222 matching) tasks.update first_touch: p50 5.12 p95 5.95 p99 28.31 max 43.81 ms (n=60) tasks.update warm: p50 2.69 p95 5.09 p99 16.42 max 34.54 ms (n=2340) GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS ``` All measurements and raw cold samples: ```json { "cold_index_ms": { "cache_mode": "dropped", "endpoint": "shutdown, empty WAL, sync -f complete", "growth_pct": 4.737184893417714, "plain": 21655.475627, "plain_ready_ms": 21604.127342, "plain_runs": [ 24406.161568000003, 21800.196137, 21665.414283000002, 22147.00233, 21289.827851, 21924.91598, 21593.889468, 21790.145285000002, 21485.502739, 21936.58352, 21475.921187, 21569.062013, 21447.724637, 21104.263800999997, 21655.475627 ], "plain_samples": [ { "db_bytes_ready": 320061440, "ready_ms": 24337.589369, "settled_ms": 24406.161568000003, "wal_bytes_ready": 359626592 }, { "db_bytes_ready": 320016384, "ready_ms": 21740.764315, "settled_ms": 21800.196137, "wal_bytes_ready": 360553592 }, { "db_bytes_ready": 319930368, "ready_ms": 21608.957202999998, "settled_ms": 21665.414283000002, "wal_bytes_ready": 359968552 }, { "db_bytes_ready": 320000000, "ready_ms": 22085.615534999997, "settled_ms": 22147.00233, "wal_bytes_ready": 359601872 }, { "db_bytes_ready": 320004096, "ready_ms": 21236.965390999998, "settled_ms": 21289.827851, "wal_bytes_ready": 359523592 }, { "db_bytes_ready": 319954944, "ready_ms": 21859.554871, "settled_ms": 21924.91598, "wal_bytes_ready": 360710152 }, { "db_bytes_ready": 319844352, "ready_ms": 21534.897345, "settled_ms": 21593.889468, "wal_bytes_ready": 359082752 }, { "db_bytes_ready": 319942656, "ready_ms": 21718.662146, "settled_ms": 21790.145285000002, "wal_bytes_ready": 360116872 }, { "db_bytes_ready": 319815680, "ready_ms": 21432.77044, "settled_ms": 21485.502739, "wal_bytes_ready": 359243432 }, { "db_bytes_ready": 319967232, "ready_ms": 21873.344227, "settled_ms": 21936.58352, "wal_bytes_ready": 359832592 }, { "db_bytes_ready": 320126976, "ready_ms": 21414.042443, "settled_ms": 21475.921187, "wal_bytes_ready": 360747232 }, { "db_bytes_ready": 319979520, "ready_ms": 21514.403495, "settled_ms": 21569.062013, "wal_bytes_ready": 360186912 }, { "db_bytes_ready": 319926272, "ready_ms": 21400.292609, "settled_ms": 21447.724637, "wal_bytes_ready": 358258752 }, { "db_bytes_ready": 320028672, "ready_ms": 21044.110709, "settled_ms": 21104.263800999997, "wal_bytes_ready": 359956192 }, { "db_bytes_ready": 320151552, "ready_ms": 21604.127342, "settled_ms": 21655.475627, "wal_bytes_ready": 360335232 } ], "tasks": 22681.335547, "tasks_ready_ms": 22617.73093, "tasks_runs": [ 22709.896468, 22645.532313, 22337.626111999998, 22085.159268000003, 22563.90782, 22595.458989000002, 23016.089122, 22746.678436, 23036.926702999997, 23000.075212, 22952.928795, 22543.279641, 22537.864786, 22681.335547, 23229.485241 ], "tasks_samples": [ { "db_bytes_ready": 348942336, "ready_ms": 22617.73093, "settled_ms": 22709.896468, "wal_bytes_ready": 389727312 }, { "db_bytes_ready": 348999680, "ready_ms": 22588.884516000002, "settled_ms": 22645.532313, "wal_bytes_ready": 390283512 }, { "db_bytes_ready": 349270016, "ready_ms": 22281.407729000002, "settled_ms": 22337.626111999998, "wal_bytes_ready": 390971552 }, { "db_bytes_ready": 348938240, "ready_ms": 22019.638511, "settled_ms": 22085.159268000003, "wal_bytes_ready": 390023952 }, { "db_bytes_ready": 349224960, "ready_ms": 22496.868448, "settled_ms": 22563.90782, "wal_bytes_ready": 391321752 }, { "db_bytes_ready": 349052928, "ready_ms": 22538.860881, "settled_ms": 22595.458989000002, "wal_bytes_ready": 392228152 }, { "db_bytes_ready": 349134848, "ready_ms": 22951.781012000003, "settled_ms": 23016.089122, "wal_bytes_ready": 391779072 }, { "db_bytes_ready": 349069312, "ready_ms": 22690.297599, "settled_ms": 22746.678436, "wal_bytes_ready": 390386512 }, { "db_bytes_ready": 349167616, "ready_ms": 22963.666741, "settled_ms": 23036.926702999997, "wal_bytes_ready": 392265232 }, { "db_bytes_ready": 349089792, "ready_ms": 22944.202462, "settled_ms": 23000.075212, "wal_bytes_ready": 391111632 }, { "db_bytes_ready": 349011968, "ready_ms": 22897.284895999997, "settled_ms": 22952.928795, "wal_bytes_ready": 389554272 }, { "db_bytes_ready": 349147136, "ready_ms": 22478.395351, "settled_ms": 22543.279641, "wal_bytes_ready": 392046872 }, { "db_bytes_ready": 349175808, "ready_ms": 22465.244664, "settled_ms": 22537.864786, "wal_bytes_ready": 391008632 }, { "db_bytes_ready": 349163520, "ready_ms": 22627.458838, "settled_ms": 22681.335547, "wal_bytes_ready": 391449472 }, { "db_bytes_ready": 349011968, "ready_ms": 23170.959402, "settled_ms": 23229.485241, "wal_bytes_ready": 392096312 } ] }, "describe_ms": { "pass": { "max": 0.43049800000000005, "n": 20000, "p50": 0.0029349999999999997, "p95": 0.016982, "p99": 0.041337 }, "pass_and_rows": { "max": 0.552388, "n": 20000, "p50": 0.012974, "p95": 0.032281, "p99": 0.063079 } }, "list_ms": { "anytime": { "matching": 8543, "max": 8.194725, "n": 200, "p50": 5.6936979999999995, "p95": 6.255171000000001, "p99": 6.628253 }, "anytime_by_child_tag": { "matching": 8759, "max": 17.346217, "n": 200, "p50": 14.30879, "p95": 15.911451999999999, "p99": 16.611666 }, "counts": { "max": 1.9253269999999998, "n": 200, "p50": 1.610126, "p95": 1.734989, "p99": 1.839966 }, "someday": { "matching": 7957, "max": 6.26012, "n": 200, "p50": 5.4047540000000005, "p95": 5.7756, "p99": 5.942083 }, "tag": { "matching": 8092, "max": 17.304949, "n": 200, "p50": 13.909561, "p95": 14.904981, "p99": 16.306154 }, "today": { "matching": 10766, "max": 10.272961, "n": 200, "p50": 8.455305, "p95": 8.973188, "p99": 9.678714 }, "today_by_priority": { "matching": 10766, "max": 8.646924, "n": 200, "p50": 7.467869, "p95": 7.7658689999999995, "p99": 8.024585 }, "untracked": { "max": 1.049301, "n": 200, "p50": 0.781839, "p95": 0.9609949999999999, "p99": 1.0001 }, "upcoming": { "matching": 15222, "max": 13.655422999999999, "n": 200, "p50": 9.148627, "p95": 10.274982999999999, "p99": 11.609881000000001 } }, "notes": 100000, "tasks": 100000, "write_ms": { "first_touch": { "max": 43.808768, "n": 60, "p50": 5.123014, "p95": 5.94601, "p99": 28.305083000000003 }, "warm": { "max": 34.541999, "n": 2340, "p50": 2.694121, "p95": 5.094801, "p99": 16.424503 } } } ``` Gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ```
Author
Owner

Fresh full server report 1/3 at 10000 notes on perf-test-01, head d23e80b949. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 541.9 seconds. Fixture Homes and state for this report have been deleted. No budgets changed.

Report verbatim:

Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational)

10000 notes (3000 daily, 35 MB, 5 long notes)

metric unit p50 p95 max noise runs × samples budget
cold.disk_written MB 46.4 46.4 46.4 0% 3 × 1
cold.first_page ms 45.2 46.8 46.8 28% 3 × 1
cold.index s 1.07 1.38 1.38 49% 3 × 1 p95 ≤ 10 ok
cold.mem_peak MB 67.7 70.7 70.7 5% 3 × 1
cold.notes_per_s notes/s 9309 11708 11708 48% 3 × 1 p50 ≥ 2000 ok
cold.startup ms 82.7 83.7 83.7 4% 3 × 1 p95 ≤ 500 ok
home.first_page ms 16.8 17.4 17.4 19% 5 × 1 p95 ≤ 300 ok
home.page ms 0.72 1.07 8.16 42% 5 × 20 p95 ≤ 50 ok
home.page_big ms 23.4 26.8 28.7 23% 5 × 5
home.page_next ms 0.78 1.38 1.93 31% 5 × 20 p95 ≤ 50 ok
home.page_tag ms 4.37 6.20 109 14% 5 × 20 p95 ≤ 50 ok
home.page_title ms 0.61 0.81 1.95 21% 5 × 20 p95 ≤ 50 ok
idle.cpu_pct % 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.1 ok
idle.cpu_ticks ticks 0.00 0.00 0.00 0% 1 × 1
idle.rss MB 36.2 36.2 36.2 0% 1 × 1
idle.threads count 15.0 15.0 15.0 0% 1 × 1
idle.wakeups_per_s /s 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.2 ok
journal.catch_up ms 43.7 47.1 47.1 26% 5 × 1 p95 ≤ 1000 ok
journal.entries count 10366 10720 10720 7% 5 × 1
journal.page ms 3.59 5.70 7.38 19% 5 × 11
load.typing_cpu_pct % 0.28 0.28 0.28 0% 1 × 1 p95 ≤ 2 ok
load.typing_wakeups_per_s /s 59.8 59.8 59.8 0% 1 × 1
mem.after_first_page MB 21.1 21.4 21.4 3% 5 × 1
mem.after_opens MB 41.2 42.6 42.6 8% 5 × 1
mem.after_search MB 43.3 46.0 46.0 7% 5 × 1
mem.idle MB 17.6 17.8 17.8 6% 5 × 1 p95 ≤ 64 ok
mem.peak MB 44.7 46.0 46.0 4% 5 × 1 p95 ≤ 256 ok
open.api_get ms 3.88 5.89 10.0 42% 5 × 24 p95 ≤ 50 ok
open.long_note ms 14.2 46.9 46.9 247% 5 × 1 p95 ≤ 250 ok
open.note ms 1.45 6.48 69.7 11% 5 × 24 p95 ≤ 15 ok
search.catch_up s 2.02 2.02 4.01 100% 5 × 3
search.first_query ms 37.0 43.1 43.1 49% 5 × 1 p95 ≤ 1000 ok
search.query ms 2.14 13.0 27.6 57% 5 × 55 p95 ≤ 100 ok
shutdown ms 70.3 93.0 93.0 40% 5 × 1 p95 ≤ 1000 ok
startup.healthz ms 75.5 78.2 78.2 8% 5 × 1 p95 ≤ 300 ok
storm.converge ms 175 180 180 8% 5 × 1 p95 ≤ 2000 ok
storm.disk_written MB 40.3 42.7 42.7 17% 5 × 1 p95 ≤ 50 ok
storm.dropped_clients count 0.00 0.00 0.00 0% 5 × 1 p95 ≤ 0 ok
storm.edits_per_s edits/s 5726 5924 5924 7% 5 × 1 p50 ≥ 1000 ok
storm.outside_edits count 4.00 4.00 4.00 0% 5 × 1
storm.save_ack ms 4.63 9.04 28.2 5% 5 × 10000 p95 ≤ 150 ok
storm.typing s 1.75 1.80 1.80 6% 5 × 1
sync.durable_write ms 12.2 18.2 26.6 5% 5 × 30
sync.round_trip ms 0.28 0.35 0.66 35% 5 × 200 p95 ≤ 10 ok
sync.save_ack ms 2.62 3.12 14.0 68% 5 × 200 p95 ≤ 40 ok
trash.delete ms 27.8 44.8 70.0 69% 5 × 30
trash.forget ms 5.55 8.12 24.2 12% 5 × 30
trash.restore ms 61.3 120 131 26% 5 × 30
uploads.response ms 95.2 117 143 3% 5 × 20
uploads.round_trip ms 1.02 1.23 3.20 7% 5 × 200
uploads.save_ack ms 3.29 4.72 22.7 5% 5 × 200

Gate output verbatim:

process exit=0

Binary and budget SHA-256:

{
  "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2",
  "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e",
  "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9",
  "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d"
}
Fresh full server report 1/3 at 10000 notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 541.9 seconds. Fixture Homes and state for this report have been deleted. No budgets changed. Report verbatim: Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational) ### 10000 notes (3000 daily, 35 MB, 5 long notes) | metric | unit | p50 | p95 | max | noise | runs × samples | budget | | |---|---|---:|---:|---:|---:|---:|---|---| | cold.disk_written | MB | 46.4 | 46.4 | 46.4 | 0% | 3 × 1 | | | | cold.first_page | ms | 45.2 | 46.8 | 46.8 | 28% | 3 × 1 | | | | cold.index | s | 1.07 | 1.38 | 1.38 | 49% | 3 × 1 | p95 ≤ 10 | ok | | cold.mem_peak | MB | 67.7 | 70.7 | 70.7 | 5% | 3 × 1 | | | | cold.notes_per_s | notes/s | 9309 | 11708 | 11708 | 48% | 3 × 1 | p50 ≥ 2000 | ok | | cold.startup | ms | 82.7 | 83.7 | 83.7 | 4% | 3 × 1 | p95 ≤ 500 | ok | | home.first_page | ms | 16.8 | 17.4 | 17.4 | 19% | 5 × 1 | p95 ≤ 300 | ok | | home.page | ms | 0.72 | 1.07 | 8.16 | 42% | 5 × 20 | p95 ≤ 50 | ok | | home.page_big | ms | 23.4 | 26.8 | 28.7 | 23% | 5 × 5 | | | | home.page_next | ms | 0.78 | 1.38 | 1.93 | 31% | 5 × 20 | p95 ≤ 50 | ok | | home.page_tag | ms | 4.37 | 6.20 | 109 | 14% | 5 × 20 | p95 ≤ 50 | ok | | home.page_title | ms | 0.61 | 0.81 | 1.95 | 21% | 5 × 20 | p95 ≤ 50 | ok | | idle.cpu_pct | % | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.1 | ok | | idle.cpu_ticks | ticks | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | | | | idle.rss | MB | 36.2 | 36.2 | 36.2 | 0% | 1 × 1 | | | | idle.threads | count | 15.0 | 15.0 | 15.0 | 0% | 1 × 1 | | | | idle.wakeups_per_s | /s | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.2 | ok | | journal.catch_up | ms | 43.7 | 47.1 | 47.1 | 26% | 5 × 1 | p95 ≤ 1000 | ok | | journal.entries | count | 10366 | 10720 | 10720 | 7% | 5 × 1 | | | | journal.page | ms | 3.59 | 5.70 | 7.38 | 19% | 5 × 11 | | | | load.typing_cpu_pct | % | 0.28 | 0.28 | 0.28 | 0% | 1 × 1 | p95 ≤ 2 | ok | | load.typing_wakeups_per_s | /s | 59.8 | 59.8 | 59.8 | 0% | 1 × 1 | | | | mem.after_first_page | MB | 21.1 | 21.4 | 21.4 | 3% | 5 × 1 | | | | mem.after_opens | MB | 41.2 | 42.6 | 42.6 | 8% | 5 × 1 | | | | mem.after_search | MB | 43.3 | 46.0 | 46.0 | 7% | 5 × 1 | | | | mem.idle | MB | 17.6 | 17.8 | 17.8 | 6% | 5 × 1 | p95 ≤ 64 | ok | | mem.peak | MB | 44.7 | 46.0 | 46.0 | 4% | 5 × 1 | p95 ≤ 256 | ok | | open.api_get | ms | 3.88 | 5.89 | 10.0 | 42% | 5 × 24 | p95 ≤ 50 | ok | | open.long_note | ms | 14.2 | 46.9 | 46.9 | 247% | 5 × 1 | p95 ≤ 250 | ok | | open.note | ms | 1.45 | 6.48 | 69.7 | 11% | 5 × 24 | p95 ≤ 15 | ok | | search.catch_up | s | 2.02 | 2.02 | 4.01 | 100% | 5 × 3 | | | | search.first_query | ms | 37.0 | 43.1 | 43.1 | 49% | 5 × 1 | p95 ≤ 1000 | ok | | search.query | ms | 2.14 | 13.0 | 27.6 | 57% | 5 × 55 | p95 ≤ 100 | ok | | shutdown | ms | 70.3 | 93.0 | 93.0 | 40% | 5 × 1 | p95 ≤ 1000 | ok | | startup.healthz | ms | 75.5 | 78.2 | 78.2 | 8% | 5 × 1 | p95 ≤ 300 | ok | | storm.converge | ms | 175 | 180 | 180 | 8% | 5 × 1 | p95 ≤ 2000 | ok | | storm.disk_written | MB | 40.3 | 42.7 | 42.7 | 17% | 5 × 1 | p95 ≤ 50 | ok | | storm.dropped_clients | count | 0.00 | 0.00 | 0.00 | 0% | 5 × 1 | p95 ≤ 0 | ok | | storm.edits_per_s | edits/s | 5726 | 5924 | 5924 | 7% | 5 × 1 | p50 ≥ 1000 | ok | | storm.outside_edits | count | 4.00 | 4.00 | 4.00 | 0% | 5 × 1 | | | | storm.save_ack | ms | 4.63 | 9.04 | 28.2 | 5% | 5 × 10000 | p95 ≤ 150 | ok | | storm.typing | s | 1.75 | 1.80 | 1.80 | 6% | 5 × 1 | | | | sync.durable_write | ms | 12.2 | 18.2 | 26.6 | 5% | 5 × 30 | | | | sync.round_trip | ms | 0.28 | 0.35 | 0.66 | 35% | 5 × 200 | p95 ≤ 10 | ok | | sync.save_ack | ms | 2.62 | 3.12 | 14.0 | 68% | 5 × 200 | p95 ≤ 40 | ok | | trash.delete | ms | 27.8 | 44.8 | 70.0 | 69% | 5 × 30 | | | | trash.forget | ms | 5.55 | 8.12 | 24.2 | 12% | 5 × 30 | | | | trash.restore | ms | 61.3 | 120 | 131 | 26% | 5 × 30 | | | | uploads.response | ms | 95.2 | 117 | 143 | 3% | 5 × 20 | | | | uploads.round_trip | ms | 1.02 | 1.23 | 3.20 | 7% | 5 × 200 | | | | uploads.save_ack | ms | 3.29 | 4.72 | 22.7 | 5% | 5 × 200 | | | Gate output verbatim: ```text process exit=0 ``` Binary and budget SHA-256: ```json { "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2", "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e", "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9", "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d" } ```
Author
Owner

Tasks report 1/3 at 10000 base notes plus 10000 task notes on perf-test-01, head d23e80b949. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 67.7 seconds. Fixture Homes and state deleted.

Output verbatim:

making a Home of 10000 notes
adding 10000 task notes
cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f
cold plain run 0: {"ready_ms":1173.771939,"settled_ms":1200.942997,"wal_bytes_ready":30710512,"db_bytes_ready":29224960}
cold tasks run 0: {"ready_ms":2200.799536,"settled_ms":2226.5183190000002,"wal_bytes_ready":34060072,"db_bytes_ready":32043008}
cold tasks run 1: {"ready_ms":1742.335666,"settled_ms":1770.934873,"wal_bytes_ready":34101272,"db_bytes_ready":32026624}
cold plain run 1: {"ready_ms":1578.4440640000003,"settled_ms":1603.1985180000001,"wal_bytes_ready":31027752,"db_bytes_ready":29212672}
cold plain run 2: {"ready_ms":1596.5393880000001,"settled_ms":1621.5635790000001,"wal_bytes_ready":30726992,"db_bytes_ready":29233152}
cold tasks run 2: {"ready_ms":1634.118851,"settled_ms":1667.279953,"wal_bytes_ready":33792272,"db_bytes_ready":32038912}
cold tasks run 3: {"ready_ms":1635.11416,"settled_ms":1660.525476,"wal_bytes_ready":34274312,"db_bytes_ready":32051200}
cold plain run 3: {"ready_ms":1545.4993670000001,"settled_ms":1571.38377,"wal_bytes_ready":31188432,"db_bytes_ready":29212672}
cold plain run 4: {"ready_ms":1585.183177,"settled_ms":1621.7329660000003,"wal_bytes_ready":31163712,"db_bytes_ready":29220864}
cold tasks run 4: {"ready_ms":1658.134078,"settled_ms":1684.212034,"wal_bytes_ready":34064192,"db_bytes_ready":32055296}
cold tasks run 5: {"ready_ms":1672.643607,"settled_ms":1700.7068350000002,"wal_bytes_ready":34031232,"db_bytes_ready":32043008}
cold plain run 5: {"ready_ms":1474.515151,"settled_ms":1501.0247969999998,"wal_bytes_ready":30718752,"db_bytes_ready":29245440}
cold plain run 6: {"ready_ms":1543.852633,"settled_ms":1569.109849,"wal_bytes_ready":30982432,"db_bytes_ready":29192192}
cold tasks run 6: {"ready_ms":1678.468379,"settled_ms":1704.081883,"wal_bytes_ready":33998272,"db_bytes_ready":32059392}
cold tasks run 7: {"ready_ms":1590.2706580000001,"settled_ms":1618.573376,"wal_bytes_ready":34299032,"db_bytes_ready":32022528}
cold plain run 7: {"ready_ms":1599.086355,"settled_ms":1623.5925820000002,"wal_bytes_ready":30731112,"db_bytes_ready":29216768}
cold plain run 8: {"ready_ms":1552.25163,"settled_ms":1576.78636,"wal_bytes_ready":30755832,"db_bytes_ready":29224960}
cold tasks run 8: {"ready_ms":1653.2570600000001,"settled_ms":1678.5431389999999,"wal_bytes_ready":34562712,"db_bytes_ready":32034816}
cold tasks run 9: {"ready_ms":1552.1684200000002,"settled_ms":1576.58038,"wal_bytes_ready":33981792,"db_bytes_ready":32026624}
cold plain run 9: {"ready_ms":1508.077041,"settled_ms":1532.891615,"wal_bytes_ready":30764072,"db_bytes_ready":29229056}
cold plain run 10: {"ready_ms":1590.4921189999998,"settled_ms":1615.7905019999998,"wal_bytes_ready":30759952,"db_bytes_ready":29220864}
cold tasks run 10: {"ready_ms":1632.3512070000002,"settled_ms":1681.126144,"wal_bytes_ready":34064192,"db_bytes_ready":32030720}
cold tasks run 11: {"ready_ms":1548.3070109999999,"settled_ms":1573.651308,"wal_bytes_ready":34010632,"db_bytes_ready":32043008}
cold plain run 11: {"ready_ms":1533.890402,"settled_ms":1558.130558,"wal_bytes_ready":30735232,"db_bytes_ready":29237248}
cold plain run 12: {"ready_ms":1602.4012,"settled_ms":1626.624756,"wal_bytes_ready":30932992,"db_bytes_ready":29212672}
cold tasks run 12: {"ready_ms":1575.426327,"settled_ms":1601.201734,"wal_bytes_ready":33825232,"db_bytes_ready":32051200}
cold tasks run 13: {"ready_ms":1684.614752,"settled_ms":1711.6628039999998,"wal_bytes_ready":34299032,"db_bytes_ready":32038912}
cold plain run 13: {"ready_ms":1541.2461930000002,"settled_ms":1568.504791,"wal_bytes_ready":30759952,"db_bytes_ready":29224960}
cold plain run 14: {"ready_ms":1533.375503,"settled_ms":1576.965123,"wal_bytes_ready":31019512,"db_bytes_ready":29249536}
cold tasks run 14: {"ready_ms":1549.432213,"settled_ms":1573.571952,"wal_bytes_ready":33981792,"db_bytes_ready":32034816}
counts: {"anytime":868,"incomplete":false,"someday":822,"tags":{"cooking":97,"errands":809,"errands/a":6,"errands/about":3,"errands/after":6,"errands/again":3,"errands/already":6,"errands/always":9,"errands/and":2,"errands/answer":5,"errands/appointment":5,"errands/as":6,"errands/at":6,"errands/backup":4,"errands/before":8,"errands/book":13,"errands/bread":3,"errands/bright":4,"errands/brother":12,"errands/budget":5,"errands/bug":6,"errands/busy":7,"errands/but":5,"errands/café":6,"errands/call":5,"errands/calm":5,"errands/carefully":8,"errands/chai":5,"errands/change":4,"errands/chapter":6,"errands/coffee":9,"errands/cold":8,"errands/colour":3,"errands/dal":7,"errands/dark":1,"errands/design":10,"errands/doctor":5,"errands/draft":5,"errands/early":6,"errands/easy":4,"errands/editor":7,"errands/evening":5,"errands/family":2,"errands/finish":4,"errands/fix":4,"errands/flight":7,"errands/for":3,"errands/forget":6,"errands/friends":2,"errands/from":10,"errands/garden":4,"errands/good":9,"errands/guitar":9,"errands/happy":4,"errands/hard":9,"errands/honestly":4,"errands/hotel":5,"errands/idea":4,"errands/in":3,"errands/into":6,"errands/invoice":6,"errands/is":3,"errands/it":9,"errands/keep":4,"errands/keyboard":6,"errands/kitchen":6,"errands/language":8,"errands/laptop":2,"errands/large":5,"errands/late":5,"errands/lesson":6,"errands/list":4,"errands/loud":3,"errands/lovely":4,"errands/market":4,"errands/maybe":6,"errands/meeting":7,"errands/monsoon":5,"errands/more":6,"errands/move":6,"errands/music":4,"errands/naïve":8,"errands/never":7,"errands/new":9,"errands/notes":6,"errands/of":8,"errands/often":8,"errands/old":6,"errands/on":5,"errands/paper":8,"errands/parents":7,"errands/pencil":12,"errands/phone":4,"errands/plan":9,"errands/practice":10,"errands/probably":3,"errands/project":6,"errands/question":7,"errands/quickly":5,"errands/quiet":5,"errands/rain":5,"errands/read":2,"errands/really":2,"errands/recipe":8,"errands/release":6,"errands/remember":7,"errands/review":6,"errands/rice":11,"errands/run":9,"errands/résumé":5,"errands/screen":3,"errands/sell":4,"errands/sentence":2,"errands/server":4,"errands/sister":6,"errands/sketch":9,"errands/sleep":9,"errands/slowly":4,"errands/small":10,"errands/some":3,"errands/sometimes":8,"errands/song":9,"errands/start":8,"errands/station":6,"errands/still":4,"errands/strange":4,"errands/tea":1,"errands/that":8,"errands/the":6,"errands/they":4,"errands/think":4,"errands/this":7,"errands/tired":3,"errands/to":5,"errands/today":7,"errands/tomorrow":5,"errands/train":5,"errands/travel":5,"errands/try":7,"errands/vegetables":10,"errands/visa":9,"errands/walk":4,"errands/warm":6,"errands/we":9,"errands/weather":6,"errands/when":3,"errands/with":5,"errands/word":2,"errands/write":9,"errands/नमस्ते":11,"errands/ദിവസം":7,"errands/☕":2,"errands/日記":8,"errands/🌧️":2,"errands/👍":7,"family":99,"film":106,"garden":103,"health":107,"home":91,"ideas":99,"journal":104,"learning":96,"money":90,"music":123,"people":105,"project":237,"project/calternal":133,"project/house":109,"reading":104,"run":90,"todo":107,"travel":99,"work":96,"writing":132},"today":1044,"untracked":26708,"upcoming":1513}
tasks-bench: 10000 notes + 10000 tasks
cold.index plain 1577 ms, with tasks 1679 ms (+6.5 %)
tasks.describe p50 0.0029 p95 0.0139 ms (with rows: p50 0.0123 p95 0.0337)
               anytime: p50 1.94 p95 2.15 p99 2.34 max 2.49 ms (n=200, 868 matching)
  anytime_by_child_tag: p50 2.58 p95 2.90 p99 3.16 max 4.49 ms (n=200, 886 matching)
                counts: p50 0.25 p95 0.32 p99 0.36 max 0.38 ms (n=200, null matching)
               someday: p50 1.99 p95 2.49 p99 3.37 max 3.85 ms (n=200, 822 matching)
                   tag: p50 2.75 p95 3.43 p99 3.94 max 4.08 ms (n=200, 809 matching)
                 today: p50 2.25 p95 2.43 p99 2.64 max 2.98 ms (n=200, 1044 matching)
     today_by_priority: p50 2.29 p95 2.63 p99 3.15 max 3.23 ms (n=200, 1044 matching)
             untracked: p50 0.72 p95 0.85 p99 0.96 max 1.82 ms (n=200, null matching)
              upcoming: p50 2.46 p95 2.72 p99 2.92 max 3.08 ms (n=200, 1513 matching)
tasks.update first_touch: p50 5.46 p95 5.73 p99 5.93 max 30.97 ms (n=60)
tasks.update        warm: p50 2.81 p95 5.21 p99 14.92 max 39.02 ms (n=2340)
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS

All measurements and raw cold samples:

{
  "cold_index_ms": {
    "cache_mode": "dropped",
    "endpoint": "shutdown, empty WAL, sync -f complete",
    "growth_pct": 6.453428414994648,
    "plain": 1576.78636,
    "plain_ready_ms": 1545.4993670000001,
    "plain_runs": [
      1200.942997,
      1603.1985180000001,
      1621.5635790000001,
      1571.38377,
      1621.7329660000003,
      1501.0247969999998,
      1569.109849,
      1623.5925820000002,
      1576.78636,
      1532.891615,
      1615.7905019999998,
      1558.130558,
      1626.624756,
      1568.504791,
      1576.965123
    ],
    "plain_samples": [
      {
        "db_bytes_ready": 29224960,
        "ready_ms": 1173.771939,
        "settled_ms": 1200.942997,
        "wal_bytes_ready": 30710512
      },
      {
        "db_bytes_ready": 29212672,
        "ready_ms": 1578.4440640000003,
        "settled_ms": 1603.1985180000001,
        "wal_bytes_ready": 31027752
      },
      {
        "db_bytes_ready": 29233152,
        "ready_ms": 1596.5393880000001,
        "settled_ms": 1621.5635790000001,
        "wal_bytes_ready": 30726992
      },
      {
        "db_bytes_ready": 29212672,
        "ready_ms": 1545.4993670000001,
        "settled_ms": 1571.38377,
        "wal_bytes_ready": 31188432
      },
      {
        "db_bytes_ready": 29220864,
        "ready_ms": 1585.183177,
        "settled_ms": 1621.7329660000003,
        "wal_bytes_ready": 31163712
      },
      {
        "db_bytes_ready": 29245440,
        "ready_ms": 1474.515151,
        "settled_ms": 1501.0247969999998,
        "wal_bytes_ready": 30718752
      },
      {
        "db_bytes_ready": 29192192,
        "ready_ms": 1543.852633,
        "settled_ms": 1569.109849,
        "wal_bytes_ready": 30982432
      },
      {
        "db_bytes_ready": 29216768,
        "ready_ms": 1599.086355,
        "settled_ms": 1623.5925820000002,
        "wal_bytes_ready": 30731112
      },
      {
        "db_bytes_ready": 29224960,
        "ready_ms": 1552.25163,
        "settled_ms": 1576.78636,
        "wal_bytes_ready": 30755832
      },
      {
        "db_bytes_ready": 29229056,
        "ready_ms": 1508.077041,
        "settled_ms": 1532.891615,
        "wal_bytes_ready": 30764072
      },
      {
        "db_bytes_ready": 29220864,
        "ready_ms": 1590.4921189999998,
        "settled_ms": 1615.7905019999998,
        "wal_bytes_ready": 30759952
      },
      {
        "db_bytes_ready": 29237248,
        "ready_ms": 1533.890402,
        "settled_ms": 1558.130558,
        "wal_bytes_ready": 30735232
      },
      {
        "db_bytes_ready": 29212672,
        "ready_ms": 1602.4012,
        "settled_ms": 1626.624756,
        "wal_bytes_ready": 30932992
      },
      {
        "db_bytes_ready": 29224960,
        "ready_ms": 1541.2461930000002,
        "settled_ms": 1568.504791,
        "wal_bytes_ready": 30759952
      },
      {
        "db_bytes_ready": 29249536,
        "ready_ms": 1533.375503,
        "settled_ms": 1576.965123,
        "wal_bytes_ready": 31019512
      }
    ],
    "tasks": 1678.5431389999999,
    "tasks_ready_ms": 1635.11416,
    "tasks_runs": [
      2226.5183190000002,
      1770.934873,
      1667.279953,
      1660.525476,
      1684.212034,
      1700.7068350000002,
      1704.081883,
      1618.573376,
      1678.5431389999999,
      1576.58038,
      1681.126144,
      1573.651308,
      1601.201734,
      1711.6628039999998,
      1573.571952
    ],
    "tasks_samples": [
      {
        "db_bytes_ready": 32043008,
        "ready_ms": 2200.799536,
        "settled_ms": 2226.5183190000002,
        "wal_bytes_ready": 34060072
      },
      {
        "db_bytes_ready": 32026624,
        "ready_ms": 1742.335666,
        "settled_ms": 1770.934873,
        "wal_bytes_ready": 34101272
      },
      {
        "db_bytes_ready": 32038912,
        "ready_ms": 1634.118851,
        "settled_ms": 1667.279953,
        "wal_bytes_ready": 33792272
      },
      {
        "db_bytes_ready": 32051200,
        "ready_ms": 1635.11416,
        "settled_ms": 1660.525476,
        "wal_bytes_ready": 34274312
      },
      {
        "db_bytes_ready": 32055296,
        "ready_ms": 1658.134078,
        "settled_ms": 1684.212034,
        "wal_bytes_ready": 34064192
      },
      {
        "db_bytes_ready": 32043008,
        "ready_ms": 1672.643607,
        "settled_ms": 1700.7068350000002,
        "wal_bytes_ready": 34031232
      },
      {
        "db_bytes_ready": 32059392,
        "ready_ms": 1678.468379,
        "settled_ms": 1704.081883,
        "wal_bytes_ready": 33998272
      },
      {
        "db_bytes_ready": 32022528,
        "ready_ms": 1590.2706580000001,
        "settled_ms": 1618.573376,
        "wal_bytes_ready": 34299032
      },
      {
        "db_bytes_ready": 32034816,
        "ready_ms": 1653.2570600000001,
        "settled_ms": 1678.5431389999999,
        "wal_bytes_ready": 34562712
      },
      {
        "db_bytes_ready": 32026624,
        "ready_ms": 1552.1684200000002,
        "settled_ms": 1576.58038,
        "wal_bytes_ready": 33981792
      },
      {
        "db_bytes_ready": 32030720,
        "ready_ms": 1632.3512070000002,
        "settled_ms": 1681.126144,
        "wal_bytes_ready": 34064192
      },
      {
        "db_bytes_ready": 32043008,
        "ready_ms": 1548.3070109999999,
        "settled_ms": 1573.651308,
        "wal_bytes_ready": 34010632
      },
      {
        "db_bytes_ready": 32051200,
        "ready_ms": 1575.426327,
        "settled_ms": 1601.201734,
        "wal_bytes_ready": 33825232
      },
      {
        "db_bytes_ready": 32038912,
        "ready_ms": 1684.614752,
        "settled_ms": 1711.6628039999998,
        "wal_bytes_ready": 34299032
      },
      {
        "db_bytes_ready": 32034816,
        "ready_ms": 1549.432213,
        "settled_ms": 1573.571952,
        "wal_bytes_ready": 33981792
      }
    ]
  },
  "describe_ms": {
    "pass": {
      "max": 0.424546,
      "n": 20000,
      "p50": 0.0028959999999999997,
      "p95": 0.013926000000000001,
      "p99": 0.035336
    },
    "pass_and_rows": {
      "max": 0.5572360000000001,
      "n": 20000,
      "p50": 0.012253,
      "p95": 0.033652999999999995,
      "p99": 0.058390000000000004
    }
  },
  "list_ms": {
    "anytime": {
      "matching": 868,
      "max": 2.487375,
      "n": 200,
      "p50": 1.9371939999999999,
      "p95": 2.150985,
      "p99": 2.341632
    },
    "anytime_by_child_tag": {
      "matching": 886,
      "max": 4.492446,
      "n": 200,
      "p50": 2.584568,
      "p95": 2.899438,
      "p99": 3.160208
    },
    "counts": {
      "max": 0.383359,
      "n": 200,
      "p50": 0.253846,
      "p95": 0.321503,
      "p99": 0.359204
    },
    "someday": {
      "matching": 822,
      "max": 3.847406,
      "n": 200,
      "p50": 1.9872969999999999,
      "p95": 2.4945890000000004,
      "p99": 3.370202
    },
    "tag": {
      "matching": 809,
      "max": 4.084961,
      "n": 200,
      "p50": 2.7456199999999997,
      "p95": 3.425965,
      "p99": 3.94047
    },
    "today": {
      "matching": 1044,
      "max": 2.978026,
      "n": 200,
      "p50": 2.253227,
      "p95": 2.4311,
      "p99": 2.635493
    },
    "today_by_priority": {
      "matching": 1044,
      "max": 3.2266410000000003,
      "n": 200,
      "p50": 2.289835,
      "p95": 2.632517,
      "p99": 3.1517910000000002
    },
    "untracked": {
      "max": 1.8192620000000002,
      "n": 200,
      "p50": 0.7167140000000001,
      "p95": 0.846409,
      "p99": 0.964599
    },
    "upcoming": {
      "matching": 1513,
      "max": 3.082352,
      "n": 200,
      "p50": 2.4581009999999996,
      "p95": 2.7168259999999997,
      "p99": 2.916781
    }
  },
  "notes": 10000,
  "tasks": 10000,
  "write_ms": {
    "first_touch": {
      "max": 30.971111,
      "n": 60,
      "p50": 5.456865,
      "p95": 5.729958,
      "p99": 5.926716
    },
    "warm": {
      "max": 39.015077000000005,
      "n": 2340,
      "p50": 2.808437,
      "p95": 5.2124950000000005,
      "p99": 14.921206
    }
  }
}

Gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
Tasks report 1/3 at 10000 base notes plus 10000 task notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 67.7 seconds. Fixture Homes and state deleted. Output verbatim: ```text making a Home of 10000 notes adding 10000 task notes cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f cold plain run 0: {"ready_ms":1173.771939,"settled_ms":1200.942997,"wal_bytes_ready":30710512,"db_bytes_ready":29224960} cold tasks run 0: {"ready_ms":2200.799536,"settled_ms":2226.5183190000002,"wal_bytes_ready":34060072,"db_bytes_ready":32043008} cold tasks run 1: {"ready_ms":1742.335666,"settled_ms":1770.934873,"wal_bytes_ready":34101272,"db_bytes_ready":32026624} cold plain run 1: {"ready_ms":1578.4440640000003,"settled_ms":1603.1985180000001,"wal_bytes_ready":31027752,"db_bytes_ready":29212672} cold plain run 2: {"ready_ms":1596.5393880000001,"settled_ms":1621.5635790000001,"wal_bytes_ready":30726992,"db_bytes_ready":29233152} cold tasks run 2: {"ready_ms":1634.118851,"settled_ms":1667.279953,"wal_bytes_ready":33792272,"db_bytes_ready":32038912} cold tasks run 3: {"ready_ms":1635.11416,"settled_ms":1660.525476,"wal_bytes_ready":34274312,"db_bytes_ready":32051200} cold plain run 3: {"ready_ms":1545.4993670000001,"settled_ms":1571.38377,"wal_bytes_ready":31188432,"db_bytes_ready":29212672} cold plain run 4: {"ready_ms":1585.183177,"settled_ms":1621.7329660000003,"wal_bytes_ready":31163712,"db_bytes_ready":29220864} cold tasks run 4: {"ready_ms":1658.134078,"settled_ms":1684.212034,"wal_bytes_ready":34064192,"db_bytes_ready":32055296} cold tasks run 5: {"ready_ms":1672.643607,"settled_ms":1700.7068350000002,"wal_bytes_ready":34031232,"db_bytes_ready":32043008} cold plain run 5: {"ready_ms":1474.515151,"settled_ms":1501.0247969999998,"wal_bytes_ready":30718752,"db_bytes_ready":29245440} cold plain run 6: {"ready_ms":1543.852633,"settled_ms":1569.109849,"wal_bytes_ready":30982432,"db_bytes_ready":29192192} cold tasks run 6: {"ready_ms":1678.468379,"settled_ms":1704.081883,"wal_bytes_ready":33998272,"db_bytes_ready":32059392} cold tasks run 7: {"ready_ms":1590.2706580000001,"settled_ms":1618.573376,"wal_bytes_ready":34299032,"db_bytes_ready":32022528} cold plain run 7: {"ready_ms":1599.086355,"settled_ms":1623.5925820000002,"wal_bytes_ready":30731112,"db_bytes_ready":29216768} cold plain run 8: {"ready_ms":1552.25163,"settled_ms":1576.78636,"wal_bytes_ready":30755832,"db_bytes_ready":29224960} cold tasks run 8: {"ready_ms":1653.2570600000001,"settled_ms":1678.5431389999999,"wal_bytes_ready":34562712,"db_bytes_ready":32034816} cold tasks run 9: {"ready_ms":1552.1684200000002,"settled_ms":1576.58038,"wal_bytes_ready":33981792,"db_bytes_ready":32026624} cold plain run 9: {"ready_ms":1508.077041,"settled_ms":1532.891615,"wal_bytes_ready":30764072,"db_bytes_ready":29229056} cold plain run 10: {"ready_ms":1590.4921189999998,"settled_ms":1615.7905019999998,"wal_bytes_ready":30759952,"db_bytes_ready":29220864} cold tasks run 10: {"ready_ms":1632.3512070000002,"settled_ms":1681.126144,"wal_bytes_ready":34064192,"db_bytes_ready":32030720} cold tasks run 11: {"ready_ms":1548.3070109999999,"settled_ms":1573.651308,"wal_bytes_ready":34010632,"db_bytes_ready":32043008} cold plain run 11: {"ready_ms":1533.890402,"settled_ms":1558.130558,"wal_bytes_ready":30735232,"db_bytes_ready":29237248} cold plain run 12: {"ready_ms":1602.4012,"settled_ms":1626.624756,"wal_bytes_ready":30932992,"db_bytes_ready":29212672} cold tasks run 12: {"ready_ms":1575.426327,"settled_ms":1601.201734,"wal_bytes_ready":33825232,"db_bytes_ready":32051200} cold tasks run 13: {"ready_ms":1684.614752,"settled_ms":1711.6628039999998,"wal_bytes_ready":34299032,"db_bytes_ready":32038912} cold plain run 13: {"ready_ms":1541.2461930000002,"settled_ms":1568.504791,"wal_bytes_ready":30759952,"db_bytes_ready":29224960} cold plain run 14: {"ready_ms":1533.375503,"settled_ms":1576.965123,"wal_bytes_ready":31019512,"db_bytes_ready":29249536} cold tasks run 14: {"ready_ms":1549.432213,"settled_ms":1573.571952,"wal_bytes_ready":33981792,"db_bytes_ready":32034816} counts: {"anytime":868,"incomplete":false,"someday":822,"tags":{"cooking":97,"errands":809,"errands/a":6,"errands/about":3,"errands/after":6,"errands/again":3,"errands/already":6,"errands/always":9,"errands/and":2,"errands/answer":5,"errands/appointment":5,"errands/as":6,"errands/at":6,"errands/backup":4,"errands/before":8,"errands/book":13,"errands/bread":3,"errands/bright":4,"errands/brother":12,"errands/budget":5,"errands/bug":6,"errands/busy":7,"errands/but":5,"errands/café":6,"errands/call":5,"errands/calm":5,"errands/carefully":8,"errands/chai":5,"errands/change":4,"errands/chapter":6,"errands/coffee":9,"errands/cold":8,"errands/colour":3,"errands/dal":7,"errands/dark":1,"errands/design":10,"errands/doctor":5,"errands/draft":5,"errands/early":6,"errands/easy":4,"errands/editor":7,"errands/evening":5,"errands/family":2,"errands/finish":4,"errands/fix":4,"errands/flight":7,"errands/for":3,"errands/forget":6,"errands/friends":2,"errands/from":10,"errands/garden":4,"errands/good":9,"errands/guitar":9,"errands/happy":4,"errands/hard":9,"errands/honestly":4,"errands/hotel":5,"errands/idea":4,"errands/in":3,"errands/into":6,"errands/invoice":6,"errands/is":3,"errands/it":9,"errands/keep":4,"errands/keyboard":6,"errands/kitchen":6,"errands/language":8,"errands/laptop":2,"errands/large":5,"errands/late":5,"errands/lesson":6,"errands/list":4,"errands/loud":3,"errands/lovely":4,"errands/market":4,"errands/maybe":6,"errands/meeting":7,"errands/monsoon":5,"errands/more":6,"errands/move":6,"errands/music":4,"errands/naïve":8,"errands/never":7,"errands/new":9,"errands/notes":6,"errands/of":8,"errands/often":8,"errands/old":6,"errands/on":5,"errands/paper":8,"errands/parents":7,"errands/pencil":12,"errands/phone":4,"errands/plan":9,"errands/practice":10,"errands/probably":3,"errands/project":6,"errands/question":7,"errands/quickly":5,"errands/quiet":5,"errands/rain":5,"errands/read":2,"errands/really":2,"errands/recipe":8,"errands/release":6,"errands/remember":7,"errands/review":6,"errands/rice":11,"errands/run":9,"errands/résumé":5,"errands/screen":3,"errands/sell":4,"errands/sentence":2,"errands/server":4,"errands/sister":6,"errands/sketch":9,"errands/sleep":9,"errands/slowly":4,"errands/small":10,"errands/some":3,"errands/sometimes":8,"errands/song":9,"errands/start":8,"errands/station":6,"errands/still":4,"errands/strange":4,"errands/tea":1,"errands/that":8,"errands/the":6,"errands/they":4,"errands/think":4,"errands/this":7,"errands/tired":3,"errands/to":5,"errands/today":7,"errands/tomorrow":5,"errands/train":5,"errands/travel":5,"errands/try":7,"errands/vegetables":10,"errands/visa":9,"errands/walk":4,"errands/warm":6,"errands/we":9,"errands/weather":6,"errands/when":3,"errands/with":5,"errands/word":2,"errands/write":9,"errands/नमस्ते":11,"errands/ദിവസം":7,"errands/☕":2,"errands/日記":8,"errands/🌧️":2,"errands/👍":7,"family":99,"film":106,"garden":103,"health":107,"home":91,"ideas":99,"journal":104,"learning":96,"money":90,"music":123,"people":105,"project":237,"project/calternal":133,"project/house":109,"reading":104,"run":90,"todo":107,"travel":99,"work":96,"writing":132},"today":1044,"untracked":26708,"upcoming":1513} tasks-bench: 10000 notes + 10000 tasks cold.index plain 1577 ms, with tasks 1679 ms (+6.5 %) tasks.describe p50 0.0029 p95 0.0139 ms (with rows: p50 0.0123 p95 0.0337) anytime: p50 1.94 p95 2.15 p99 2.34 max 2.49 ms (n=200, 868 matching) anytime_by_child_tag: p50 2.58 p95 2.90 p99 3.16 max 4.49 ms (n=200, 886 matching) counts: p50 0.25 p95 0.32 p99 0.36 max 0.38 ms (n=200, null matching) someday: p50 1.99 p95 2.49 p99 3.37 max 3.85 ms (n=200, 822 matching) tag: p50 2.75 p95 3.43 p99 3.94 max 4.08 ms (n=200, 809 matching) today: p50 2.25 p95 2.43 p99 2.64 max 2.98 ms (n=200, 1044 matching) today_by_priority: p50 2.29 p95 2.63 p99 3.15 max 3.23 ms (n=200, 1044 matching) untracked: p50 0.72 p95 0.85 p99 0.96 max 1.82 ms (n=200, null matching) upcoming: p50 2.46 p95 2.72 p99 2.92 max 3.08 ms (n=200, 1513 matching) tasks.update first_touch: p50 5.46 p95 5.73 p99 5.93 max 30.97 ms (n=60) tasks.update warm: p50 2.81 p95 5.21 p99 14.92 max 39.02 ms (n=2340) GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS ``` All measurements and raw cold samples: ```json { "cold_index_ms": { "cache_mode": "dropped", "endpoint": "shutdown, empty WAL, sync -f complete", "growth_pct": 6.453428414994648, "plain": 1576.78636, "plain_ready_ms": 1545.4993670000001, "plain_runs": [ 1200.942997, 1603.1985180000001, 1621.5635790000001, 1571.38377, 1621.7329660000003, 1501.0247969999998, 1569.109849, 1623.5925820000002, 1576.78636, 1532.891615, 1615.7905019999998, 1558.130558, 1626.624756, 1568.504791, 1576.965123 ], "plain_samples": [ { "db_bytes_ready": 29224960, "ready_ms": 1173.771939, "settled_ms": 1200.942997, "wal_bytes_ready": 30710512 }, { "db_bytes_ready": 29212672, "ready_ms": 1578.4440640000003, "settled_ms": 1603.1985180000001, "wal_bytes_ready": 31027752 }, { "db_bytes_ready": 29233152, "ready_ms": 1596.5393880000001, "settled_ms": 1621.5635790000001, "wal_bytes_ready": 30726992 }, { "db_bytes_ready": 29212672, "ready_ms": 1545.4993670000001, "settled_ms": 1571.38377, "wal_bytes_ready": 31188432 }, { "db_bytes_ready": 29220864, "ready_ms": 1585.183177, "settled_ms": 1621.7329660000003, "wal_bytes_ready": 31163712 }, { "db_bytes_ready": 29245440, "ready_ms": 1474.515151, "settled_ms": 1501.0247969999998, "wal_bytes_ready": 30718752 }, { "db_bytes_ready": 29192192, "ready_ms": 1543.852633, "settled_ms": 1569.109849, "wal_bytes_ready": 30982432 }, { "db_bytes_ready": 29216768, "ready_ms": 1599.086355, "settled_ms": 1623.5925820000002, "wal_bytes_ready": 30731112 }, { "db_bytes_ready": 29224960, "ready_ms": 1552.25163, "settled_ms": 1576.78636, "wal_bytes_ready": 30755832 }, { "db_bytes_ready": 29229056, "ready_ms": 1508.077041, "settled_ms": 1532.891615, "wal_bytes_ready": 30764072 }, { "db_bytes_ready": 29220864, "ready_ms": 1590.4921189999998, "settled_ms": 1615.7905019999998, "wal_bytes_ready": 30759952 }, { "db_bytes_ready": 29237248, "ready_ms": 1533.890402, "settled_ms": 1558.130558, "wal_bytes_ready": 30735232 }, { "db_bytes_ready": 29212672, "ready_ms": 1602.4012, "settled_ms": 1626.624756, "wal_bytes_ready": 30932992 }, { "db_bytes_ready": 29224960, "ready_ms": 1541.2461930000002, "settled_ms": 1568.504791, "wal_bytes_ready": 30759952 }, { "db_bytes_ready": 29249536, "ready_ms": 1533.375503, "settled_ms": 1576.965123, "wal_bytes_ready": 31019512 } ], "tasks": 1678.5431389999999, "tasks_ready_ms": 1635.11416, "tasks_runs": [ 2226.5183190000002, 1770.934873, 1667.279953, 1660.525476, 1684.212034, 1700.7068350000002, 1704.081883, 1618.573376, 1678.5431389999999, 1576.58038, 1681.126144, 1573.651308, 1601.201734, 1711.6628039999998, 1573.571952 ], "tasks_samples": [ { "db_bytes_ready": 32043008, "ready_ms": 2200.799536, "settled_ms": 2226.5183190000002, "wal_bytes_ready": 34060072 }, { "db_bytes_ready": 32026624, "ready_ms": 1742.335666, "settled_ms": 1770.934873, "wal_bytes_ready": 34101272 }, { "db_bytes_ready": 32038912, "ready_ms": 1634.118851, "settled_ms": 1667.279953, "wal_bytes_ready": 33792272 }, { "db_bytes_ready": 32051200, "ready_ms": 1635.11416, "settled_ms": 1660.525476, "wal_bytes_ready": 34274312 }, { "db_bytes_ready": 32055296, "ready_ms": 1658.134078, "settled_ms": 1684.212034, "wal_bytes_ready": 34064192 }, { "db_bytes_ready": 32043008, "ready_ms": 1672.643607, "settled_ms": 1700.7068350000002, "wal_bytes_ready": 34031232 }, { "db_bytes_ready": 32059392, "ready_ms": 1678.468379, "settled_ms": 1704.081883, "wal_bytes_ready": 33998272 }, { "db_bytes_ready": 32022528, "ready_ms": 1590.2706580000001, "settled_ms": 1618.573376, "wal_bytes_ready": 34299032 }, { "db_bytes_ready": 32034816, "ready_ms": 1653.2570600000001, "settled_ms": 1678.5431389999999, "wal_bytes_ready": 34562712 }, { "db_bytes_ready": 32026624, "ready_ms": 1552.1684200000002, "settled_ms": 1576.58038, "wal_bytes_ready": 33981792 }, { "db_bytes_ready": 32030720, "ready_ms": 1632.3512070000002, "settled_ms": 1681.126144, "wal_bytes_ready": 34064192 }, { "db_bytes_ready": 32043008, "ready_ms": 1548.3070109999999, "settled_ms": 1573.651308, "wal_bytes_ready": 34010632 }, { "db_bytes_ready": 32051200, "ready_ms": 1575.426327, "settled_ms": 1601.201734, "wal_bytes_ready": 33825232 }, { "db_bytes_ready": 32038912, "ready_ms": 1684.614752, "settled_ms": 1711.6628039999998, "wal_bytes_ready": 34299032 }, { "db_bytes_ready": 32034816, "ready_ms": 1549.432213, "settled_ms": 1573.571952, "wal_bytes_ready": 33981792 } ] }, "describe_ms": { "pass": { "max": 0.424546, "n": 20000, "p50": 0.0028959999999999997, "p95": 0.013926000000000001, "p99": 0.035336 }, "pass_and_rows": { "max": 0.5572360000000001, "n": 20000, "p50": 0.012253, "p95": 0.033652999999999995, "p99": 0.058390000000000004 } }, "list_ms": { "anytime": { "matching": 868, "max": 2.487375, "n": 200, "p50": 1.9371939999999999, "p95": 2.150985, "p99": 2.341632 }, "anytime_by_child_tag": { "matching": 886, "max": 4.492446, "n": 200, "p50": 2.584568, "p95": 2.899438, "p99": 3.160208 }, "counts": { "max": 0.383359, "n": 200, "p50": 0.253846, "p95": 0.321503, "p99": 0.359204 }, "someday": { "matching": 822, "max": 3.847406, "n": 200, "p50": 1.9872969999999999, "p95": 2.4945890000000004, "p99": 3.370202 }, "tag": { "matching": 809, "max": 4.084961, "n": 200, "p50": 2.7456199999999997, "p95": 3.425965, "p99": 3.94047 }, "today": { "matching": 1044, "max": 2.978026, "n": 200, "p50": 2.253227, "p95": 2.4311, "p99": 2.635493 }, "today_by_priority": { "matching": 1044, "max": 3.2266410000000003, "n": 200, "p50": 2.289835, "p95": 2.632517, "p99": 3.1517910000000002 }, "untracked": { "max": 1.8192620000000002, "n": 200, "p50": 0.7167140000000001, "p95": 0.846409, "p99": 0.964599 }, "upcoming": { "matching": 1513, "max": 3.082352, "n": 200, "p50": 2.4581009999999996, "p95": 2.7168259999999997, "p99": 2.916781 } }, "notes": 10000, "tasks": 10000, "write_ms": { "first_touch": { "max": 30.971111, "n": 60, "p50": 5.456865, "p95": 5.729958, "p99": 5.926716 }, "warm": { "max": 39.015077000000005, "n": 2340, "p50": 2.808437, "p95": 5.2124950000000005, "p99": 14.921206 } } } ``` Gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ```
Author
Owner

Fresh full server report 2/3 at 100000 notes on perf-test-01, head d23e80b949. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 687.8 seconds. Fixture Homes and state for this report have been deleted. No budgets changed.

Report verbatim:

Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational)

100000 notes (10000 daily, 422 MB, 50 long notes)

metric unit p50 p95 max noise runs × samples budget
cold.disk_written MB 540 540 540 0% 3 × 1
cold.first_page ms 46.9 49.7 49.7 13% 3 × 1
cold.index s 13.7 16.2 16.2 27% 3 × 1 p95 ≤ 60 ok
cold.mem_peak MB 252 256 256 3% 3 × 1
cold.notes_per_s notes/s 7322 7924 7924 24% 3 × 1 p50 ≥ 2000 ok
cold.startup ms 87.1 131 131 53% 3 × 1 p95 ≤ 500 ok
home.first_page ms 20.8 29.4 29.4 55% 5 × 1 p95 ≤ 100 ok
home.page ms 0.78 1.18 7.31 26% 5 × 20 p95 ≤ 50 ok
home.page_big ms 143 180 189 17% 5 × 5
home.page_next ms 0.86 1.50 2.62 33% 5 × 20 p95 ≤ 50 ok
home.page_tag ms 4.63 5.73 85.9 13% 5 × 20 p95 ≤ 50 ok
home.page_title ms 0.82 1.13 2.94 34% 5 × 20 p95 ≤ 50 ok
idle.cpu_pct % 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.1 ok
idle.cpu_ticks ticks 0.00 0.00 0.00 0% 1 × 1
idle.rss MB 93.2 93.2 93.2 0% 1 × 1 p95 ≤ 100 ok
idle.threads count 15.0 15.0 15.0 0% 1 × 1
idle.wakeups_per_s /s 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.2 ok
journal.catch_up ms 423 461 461 17% 5 × 1 p95 ≤ 2000 ok
journal.entries count 100370 100728 100728 1% 5 × 1
journal.page ms 3.89 4.74 7.07 16% 5 × 101
load.typing_cpu_pct % 0.48 0.48 0.48 0% 1 × 1 p95 ≤ 2 ok
load.typing_wakeups_per_s /s 62.0 62.0 62.0 0% 1 × 1
mem.after_first_page MB 22.2 23.1 23.1 5% 5 × 1
mem.after_opens MB 122 129 129 48% 5 × 1 p95 ≤ 300 ok
mem.after_search MB 114 125 125 14% 5 × 1
mem.idle MB 16.7 16.9 16.9 2% 5 × 1 p95 ≤ 64 ok
mem.peak MB 131 135 135 3% 5 × 1 p95 ≤ 256 ok
open.api_get ms 7.08 26.1 39.6 89% 5 × 24 p95 ≤ 50 ok
open.long_note ms 24.3 43.8 43.8 99% 5 × 1 p95 ≤ 250 ok
open.note ms 4.02 20.8 34.1 88% 5 × 24 p95 ≤ 15 over
search.catch_up s 2.03 2.04 48.1 101% 5 × 3
search.first_query ms 48.6 51.0 51.0 51% 5 × 1 p95 ≤ 1000 ok
search.query ms 2.57 17.8 277 49% 5 × 55 p95 ≤ 100 ok
shutdown ms 107 127 127 38% 5 × 1 p95 ≤ 1000 ok
startup.healthz ms 103 128 128 27% 5 × 1 p95 ≤ 300 ok
storm.converge ms 171 181 181 8% 5 × 1 p95 ≤ 2000 ok
storm.disk_written MB 41.6 46.9 46.9 16% 5 × 1 p95 ≤ 50 ok
storm.dropped_clients count 0.00 0.00 0.00 0% 5 × 1 p95 ≤ 0 ok
storm.edits_per_s edits/s 5372 5568 5568 17% 5 × 1 p50 ≥ 1000 ok
storm.outside_edits count 4.00 5.00 5.00 25% 5 × 1
storm.save_ack ms 4.75 9.56 51.7 14% 5 × 10000 p95 ≤ 150 ok
storm.typing s 1.86 2.16 2.16 19% 5 × 1
sync.durable_write ms 12.1 15.3 102 4% 5 × 30
sync.round_trip ms 0.30 0.39 1.26 35% 5 × 200 p95 ≤ 10 ok
sync.save_ack ms 2.51 3.36 19.3 5% 5 × 200 p95 ≤ 40 ok
trash.delete ms 49.5 88.3 161 56% 5 × 30
trash.forget ms 5.66 7.59 21.8 11% 5 × 30
trash.restore ms 123 161 178 13% 5 × 30
uploads.response ms 94.0 111 188 2% 5 × 20
uploads.round_trip ms 1.14 1.47 3.69 19% 5 × 200
uploads.save_ack ms 3.46 4.77 17.7 6% 5 × 200

Gate output verbatim:

over budget: 100000 notes: open.note p95 20.8 > 15
process exit=1

Binary and budget SHA-256:

{
  "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2",
  "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e",
  "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9",
  "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d"
}
Fresh full server report 2/3 at 100000 notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 687.8 seconds. Fixture Homes and state for this report have been deleted. No budgets changed. Report verbatim: Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational) ### 100000 notes (10000 daily, 422 MB, 50 long notes) | metric | unit | p50 | p95 | max | noise | runs × samples | budget | | |---|---|---:|---:|---:|---:|---:|---|---| | cold.disk_written | MB | 540 | 540 | 540 | 0% | 3 × 1 | | | | cold.first_page | ms | 46.9 | 49.7 | 49.7 | 13% | 3 × 1 | | | | cold.index | s | 13.7 | 16.2 | 16.2 | 27% | 3 × 1 | p95 ≤ 60 | ok | | cold.mem_peak | MB | 252 | 256 | 256 | 3% | 3 × 1 | | | | cold.notes_per_s | notes/s | 7322 | 7924 | 7924 | 24% | 3 × 1 | p50 ≥ 2000 | ok | | cold.startup | ms | 87.1 | 131 | 131 | 53% | 3 × 1 | p95 ≤ 500 | ok | | home.first_page | ms | 20.8 | 29.4 | 29.4 | 55% | 5 × 1 | p95 ≤ 100 | ok | | home.page | ms | 0.78 | 1.18 | 7.31 | 26% | 5 × 20 | p95 ≤ 50 | ok | | home.page_big | ms | 143 | 180 | 189 | 17% | 5 × 5 | | | | home.page_next | ms | 0.86 | 1.50 | 2.62 | 33% | 5 × 20 | p95 ≤ 50 | ok | | home.page_tag | ms | 4.63 | 5.73 | 85.9 | 13% | 5 × 20 | p95 ≤ 50 | ok | | home.page_title | ms | 0.82 | 1.13 | 2.94 | 34% | 5 × 20 | p95 ≤ 50 | ok | | idle.cpu_pct | % | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.1 | ok | | idle.cpu_ticks | ticks | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | | | | idle.rss | MB | 93.2 | 93.2 | 93.2 | 0% | 1 × 1 | p95 ≤ 100 | ok | | idle.threads | count | 15.0 | 15.0 | 15.0 | 0% | 1 × 1 | | | | idle.wakeups_per_s | /s | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.2 | ok | | journal.catch_up | ms | 423 | 461 | 461 | 17% | 5 × 1 | p95 ≤ 2000 | ok | | journal.entries | count | 100370 | 100728 | 100728 | 1% | 5 × 1 | | | | journal.page | ms | 3.89 | 4.74 | 7.07 | 16% | 5 × 101 | | | | load.typing_cpu_pct | % | 0.48 | 0.48 | 0.48 | 0% | 1 × 1 | p95 ≤ 2 | ok | | load.typing_wakeups_per_s | /s | 62.0 | 62.0 | 62.0 | 0% | 1 × 1 | | | | mem.after_first_page | MB | 22.2 | 23.1 | 23.1 | 5% | 5 × 1 | | | | mem.after_opens | MB | 122 | 129 | 129 | 48% | 5 × 1 | p95 ≤ 300 | ok | | mem.after_search | MB | 114 | 125 | 125 | 14% | 5 × 1 | | | | mem.idle | MB | 16.7 | 16.9 | 16.9 | 2% | 5 × 1 | p95 ≤ 64 | ok | | mem.peak | MB | 131 | 135 | 135 | 3% | 5 × 1 | p95 ≤ 256 | ok | | open.api_get | ms | 7.08 | 26.1 | 39.6 | 89% | 5 × 24 | p95 ≤ 50 | ok | | open.long_note | ms | 24.3 | 43.8 | 43.8 | 99% | 5 × 1 | p95 ≤ 250 | ok | | open.note | ms | 4.02 | 20.8 | 34.1 | 88% | 5 × 24 | p95 ≤ 15 | **over** | | search.catch_up | s | 2.03 | 2.04 | 48.1 | 101% | 5 × 3 | | | | search.first_query | ms | 48.6 | 51.0 | 51.0 | 51% | 5 × 1 | p95 ≤ 1000 | ok | | search.query | ms | 2.57 | 17.8 | 277 | 49% | 5 × 55 | p95 ≤ 100 | ok | | shutdown | ms | 107 | 127 | 127 | 38% | 5 × 1 | p95 ≤ 1000 | ok | | startup.healthz | ms | 103 | 128 | 128 | 27% | 5 × 1 | p95 ≤ 300 | ok | | storm.converge | ms | 171 | 181 | 181 | 8% | 5 × 1 | p95 ≤ 2000 | ok | | storm.disk_written | MB | 41.6 | 46.9 | 46.9 | 16% | 5 × 1 | p95 ≤ 50 | ok | | storm.dropped_clients | count | 0.00 | 0.00 | 0.00 | 0% | 5 × 1 | p95 ≤ 0 | ok | | storm.edits_per_s | edits/s | 5372 | 5568 | 5568 | 17% | 5 × 1 | p50 ≥ 1000 | ok | | storm.outside_edits | count | 4.00 | 5.00 | 5.00 | 25% | 5 × 1 | | | | storm.save_ack | ms | 4.75 | 9.56 | 51.7 | 14% | 5 × 10000 | p95 ≤ 150 | ok | | storm.typing | s | 1.86 | 2.16 | 2.16 | 19% | 5 × 1 | | | | sync.durable_write | ms | 12.1 | 15.3 | 102 | 4% | 5 × 30 | | | | sync.round_trip | ms | 0.30 | 0.39 | 1.26 | 35% | 5 × 200 | p95 ≤ 10 | ok | | sync.save_ack | ms | 2.51 | 3.36 | 19.3 | 5% | 5 × 200 | p95 ≤ 40 | ok | | trash.delete | ms | 49.5 | 88.3 | 161 | 56% | 5 × 30 | | | | trash.forget | ms | 5.66 | 7.59 | 21.8 | 11% | 5 × 30 | | | | trash.restore | ms | 123 | 161 | 178 | 13% | 5 × 30 | | | | uploads.response | ms | 94.0 | 111 | 188 | 2% | 5 × 20 | | | | uploads.round_trip | ms | 1.14 | 1.47 | 3.69 | 19% | 5 × 200 | | | | uploads.save_ack | ms | 3.46 | 4.77 | 17.7 | 6% | 5 × 200 | | | Gate output verbatim: ```text over budget: 100000 notes: open.note p95 20.8 > 15 process exit=1 ``` Binary and budget SHA-256: ```json { "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2", "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e", "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9", "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d" } ```
Author
Owner

Tasks report 2/3 at 100000 base notes plus 100000 task notes on perf-test-01, head d23e80b949. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 740.0 seconds. Fixture Homes and state deleted.

Output verbatim:

making a Home of 100000 notes
adding 100000 task notes
cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f
cold plain run 0: {"ready_ms":24657.035348,"settled_ms":24748.045724,"wal_bytes_ready":359325832,"db_bytes_ready":319844352}
cold tasks run 0: {"ready_ms":22690.590387,"settled_ms":22759.262204,"wal_bytes_ready":391754352,"db_bytes_ready":349044736}
cold tasks run 1: {"ready_ms":22659.57615,"settled_ms":22722.476928,"wal_bytes_ready":390979792,"db_bytes_ready":348893184}
cold plain run 1: {"ready_ms":21781.451326,"settled_ms":21842.992835,"wal_bytes_ready":359189872,"db_bytes_ready":320000000}
cold plain run 2: {"ready_ms":21619.660776,"settled_ms":21699.437679,"wal_bytes_ready":360607152,"db_bytes_ready":320102400}
cold tasks run 2: {"ready_ms":22777.174192,"settled_ms":22842.321119,"wal_bytes_ready":391004512,"db_bytes_ready":348938240}
cold tasks run 3: {"ready_ms":22722.834854999997,"settled_ms":22816.871177,"wal_bytes_ready":390740832,"db_bytes_ready":349077504}
cold plain run 3: {"ready_ms":21424.499742999997,"settled_ms":21469.421913000002,"wal_bytes_ready":359803752,"db_bytes_ready":319807488}
cold plain run 4: {"ready_ms":21659.068806,"settled_ms":21721.95882,"wal_bytes_ready":359985032,"db_bytes_ready":319856640}
cold tasks run 4: {"ready_ms":23067.765682,"settled_ms":23128.889584,"wal_bytes_ready":391581312,"db_bytes_ready":348942336}
cold tasks run 5: {"ready_ms":22640.61684,"settled_ms":22710.538213,"wal_bytes_ready":390975672,"db_bytes_ready":349159424}
cold plain run 5: {"ready_ms":21777.449538999997,"settled_ms":21827.816095,"wal_bytes_ready":360046832,"db_bytes_ready":319926272}
cold plain run 6: {"ready_ms":21749.478793000002,"settled_ms":21802.427366,"wal_bytes_ready":359095112,"db_bytes_ready":319963136}
cold tasks run 6: {"ready_ms":22669.6401,"settled_ms":22756.679227,"wal_bytes_ready":391737872,"db_bytes_ready":349282304}
cold tasks run 7: {"ready_ms":22632.107711,"settled_ms":22716.100497,"wal_bytes_ready":390810872,"db_bytes_ready":349003776}
cold plain run 7: {"ready_ms":21574.389757999998,"settled_ms":21641.784147,"wal_bytes_ready":359659552,"db_bytes_ready":319918080}
cold plain run 8: {"ready_ms":21672.524338,"settled_ms":21748.983070000002,"wal_bytes_ready":360092152,"db_bytes_ready":319860736}
cold tasks run 8: {"ready_ms":22675.405014,"settled_ms":22732.888936,"wal_bytes_ready":390975672,"db_bytes_ready":348995584}
cold tasks run 9: {"ready_ms":22776.207367000003,"settled_ms":22881.557517,"wal_bytes_ready":392256992,"db_bytes_ready":349069312}
cold plain run 9: {"ready_ms":22083.216722,"settled_ms":22139.882604,"wal_bytes_ready":360149832,"db_bytes_ready":319844352}
cold plain run 10: {"ready_ms":21587.427604999997,"settled_ms":21658.821273,"wal_bytes_ready":360751352,"db_bytes_ready":319983616}
cold tasks run 10: {"ready_ms":22758.430288,"settled_ms":22820.616804,"wal_bytes_ready":392224032,"db_bytes_ready":349233152}
cold tasks run 11: {"ready_ms":22706.384158999997,"settled_ms":22774.771381000002,"wal_bytes_ready":390085752,"db_bytes_ready":349110272}
cold plain run 11: {"ready_ms":21795.145841,"settled_ms":21862.302333,"wal_bytes_ready":359523592,"db_bytes_ready":320057344}
cold plain run 12: {"ready_ms":21465.953127999997,"settled_ms":21534.400473,"wal_bytes_ready":360364072,"db_bytes_ready":319852544}
cold tasks run 12: {"ready_ms":22488.795173,"settled_ms":22550.081392,"wal_bytes_ready":391255832,"db_bytes_ready":349458432}
cold tasks run 13: {"ready_ms":22784.145895,"settled_ms":22843.666713000002,"wal_bytes_ready":391033352,"db_bytes_ready":349114368}
cold plain run 13: {"ready_ms":21687.16015,"settled_ms":21754.574693,"wal_bytes_ready":359008592,"db_bytes_ready":319811584}
cold plain run 14: {"ready_ms":21732.886776,"settled_ms":21791.976091999997,"wal_bytes_ready":360578312,"db_bytes_ready":319676416}
cold tasks run 14: {"ready_ms":22481.513036,"settled_ms":22546.026444,"wal_bytes_ready":391989192,"db_bytes_ready":349106176}
counts: {"anytime":8543,"incomplete":false,"someday":7957,"tags":{"cooking":1018,"errands":8092,"errands/a":47,"errands/about":50,"errands/after":63,"errands/again":48,"errands/already":71,"errands/always":67,"errands/and":43,"errands/answer":63,"errands/appointment":56,"errands/as":54,"errands/at":53,"errands/backup":55,"errands/before":62,"errands/book":68,"errands/bread":65,"errands/bright":45,"errands/brother":51,"errands/budget":59,"errands/bug":62,"errands/busy":50,"errands/but":58,"errands/buy":57,"errands/café":62,"errands/call":51,"errands/calm":50,"errands/carefully":43,"errands/chai":58,"errands/change":48,"errands/chapter":63,"errands/coffee":75,"errands/cold":69,"errands/colour":47,"errands/dal":64,"errands/dark":46,"errands/design":69,"errands/doctor":56,"errands/draft":45,"errands/early":51,"errands/easy":51,"errands/editor":58,"errands/evening":55,"errands/family":48,"errands/finish":60,"errands/fix":50,"errands/flight":55,"errands/for":58,"errands/forget":60,"errands/friends":44,"errands/from":52,"errands/garden":53,"errands/good":55,"errands/guitar":64,"errands/happy":51,"errands/hard":66,"errands/honestly":60,"errands/hotel":57,"errands/idea":54,"errands/in":57,"errands/into":59,"errands/invoice":64,"errands/is":54,"errands/it":63,"errands/keep":60,"errands/keyboard":53,"errands/kitchen":59,"errands/language":64,"errands/laptop":63,"errands/large":55,"errands/late":67,"errands/lesson":54,"errands/list":62,"errands/loud":56,"errands/lovely":54,"errands/market":52,"errands/maybe":65,"errands/meeting":62,"errands/monsoon":68,"errands/more":52,"errands/morning":56,"errands/move":57,"errands/music":63,"errands/naïve":60,"errands/never":61,"errands/new":47,"errands/notes":55,"errands/of":56,"errands/often":62,"errands/old":61,"errands/on":49,"errands/paper":59,"errands/parents":64,"errands/pencil":72,"errands/phone":65,"errands/plan":62,"errands/practice":52,"errands/probably":55,"errands/project":72,"errands/question":49,"errands/quickly":68,"errands/quiet":57,"errands/rain":60,"errands/read":62,"errands/really":46,"errands/recipe":62,"errands/release":60,"errands/remember":62,"errands/review":52,"errands/rice":64,"errands/run":68,"errands/résumé":54,"errands/screen":70,"errands/sell":48,"errands/sentence":66,"errands/server":56,"errands/sister":63,"errands/sketch":65,"errands/sleep":72,"errands/slowly":44,"errands/small":59,"errands/some":39,"errands/sometimes":57,"errands/song":65,"errands/start":57,"errands/station":40,"errands/still":71,"errands/strange":65,"errands/tea":59,"errands/that":56,"errands/the":51,"errands/they":70,"errands/think":59,"errands/this":55,"errands/tired":47,"errands/to":71,"errands/today":52,"errands/tomorrow":62,"errands/train":56,"errands/travel":48,"errands/try":61,"errands/vegetables":63,"errands/visa":53,"errands/walk":62,"errands/warm":57,"errands/was":57,"errands/we":54,"errands/weather":58,"errands/when":62,"errands/with":44,"errands/word":56,"errands/write":68,"errands/नमस्ते":71,"errands/ദിവസം":60,"errands/☕":51,"errands/日記":64,"errands/🌧️":56,"errands/👍":56,"family":1051,"film":1039,"garden":1054,"health":1048,"home":1043,"ideas":1014,"journal":1068,"learning":981,"money":1015,"music":1072,"people":1070,"project":2139,"project/calternal":1022,"project/house":1149,"reading":987,"run":1030,"todo":1033,"travel":1011,"work":1059,"writing":1067},"today":10766,"untracked":338090,"upcoming":15222}
tasks-bench: 100000 notes + 100000 tasks
cold.index plain 21755 ms, with tasks 22759 ms (+4.6 %)
tasks.describe p50 0.0029 p95 0.0171 ms (with rows: p50 0.0123 p95 0.0309)
               anytime: p50 5.99 p95 6.66 p99 7.26 max 7.56 ms (n=200, 8543 matching)
  anytime_by_child_tag: p50 15.18 p95 17.10 p99 19.97 max 20.70 ms (n=200, 8759 matching)
                counts: p50 1.64 p95 1.79 p99 1.84 max 1.87 ms (n=200, null matching)
               someday: p50 5.75 p95 6.48 p99 8.21 max 8.38 ms (n=200, 7957 matching)
                   tag: p50 14.39 p95 15.22 p99 15.56 max 16.32 ms (n=200, 8092 matching)
                 today: p50 8.85 p95 9.63 p99 10.88 max 14.19 ms (n=200, 10766 matching)
     today_by_priority: p50 7.99 p95 8.94 p99 10.10 max 10.36 ms (n=200, 10766 matching)
             untracked: p50 0.76 p95 0.94 p99 1.03 max 1.06 ms (n=200, null matching)
              upcoming: p50 9.50 p95 9.98 p99 10.30 max 10.74 ms (n=200, 15222 matching)
tasks.update first_touch: p50 5.25 p95 6.04 p99 25.20 max 60.58 ms (n=60)
tasks.update        warm: p50 2.82 p95 5.34 p99 16.54 max 29.62 ms (n=2340)
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS

All measurements and raw cold samples:

{
  "cold_index_ms": {
    "cache_mode": "dropped",
    "endpoint": "shutdown, empty WAL, sync -f complete",
    "growth_pct": 4.618281557686714,
    "plain": 21754.574693,
    "plain_ready_ms": 21687.16015,
    "plain_runs": [
      24748.045724,
      21842.992835,
      21699.437679,
      21469.421913000002,
      21721.95882,
      21827.816095,
      21802.427366,
      21641.784147,
      21748.983070000002,
      22139.882604,
      21658.821273,
      21862.302333,
      21534.400473,
      21754.574693,
      21791.976091999997
    ],
    "plain_samples": [
      {
        "db_bytes_ready": 319844352,
        "ready_ms": 24657.035348,
        "settled_ms": 24748.045724,
        "wal_bytes_ready": 359325832
      },
      {
        "db_bytes_ready": 320000000,
        "ready_ms": 21781.451326,
        "settled_ms": 21842.992835,
        "wal_bytes_ready": 359189872
      },
      {
        "db_bytes_ready": 320102400,
        "ready_ms": 21619.660776,
        "settled_ms": 21699.437679,
        "wal_bytes_ready": 360607152
      },
      {
        "db_bytes_ready": 319807488,
        "ready_ms": 21424.499742999997,
        "settled_ms": 21469.421913000002,
        "wal_bytes_ready": 359803752
      },
      {
        "db_bytes_ready": 319856640,
        "ready_ms": 21659.068806,
        "settled_ms": 21721.95882,
        "wal_bytes_ready": 359985032
      },
      {
        "db_bytes_ready": 319926272,
        "ready_ms": 21777.449538999997,
        "settled_ms": 21827.816095,
        "wal_bytes_ready": 360046832
      },
      {
        "db_bytes_ready": 319963136,
        "ready_ms": 21749.478793000002,
        "settled_ms": 21802.427366,
        "wal_bytes_ready": 359095112
      },
      {
        "db_bytes_ready": 319918080,
        "ready_ms": 21574.389757999998,
        "settled_ms": 21641.784147,
        "wal_bytes_ready": 359659552
      },
      {
        "db_bytes_ready": 319860736,
        "ready_ms": 21672.524338,
        "settled_ms": 21748.983070000002,
        "wal_bytes_ready": 360092152
      },
      {
        "db_bytes_ready": 319844352,
        "ready_ms": 22083.216722,
        "settled_ms": 22139.882604,
        "wal_bytes_ready": 360149832
      },
      {
        "db_bytes_ready": 319983616,
        "ready_ms": 21587.427604999997,
        "settled_ms": 21658.821273,
        "wal_bytes_ready": 360751352
      },
      {
        "db_bytes_ready": 320057344,
        "ready_ms": 21795.145841,
        "settled_ms": 21862.302333,
        "wal_bytes_ready": 359523592
      },
      {
        "db_bytes_ready": 319852544,
        "ready_ms": 21465.953127999997,
        "settled_ms": 21534.400473,
        "wal_bytes_ready": 360364072
      },
      {
        "db_bytes_ready": 319811584,
        "ready_ms": 21687.16015,
        "settled_ms": 21754.574693,
        "wal_bytes_ready": 359008592
      },
      {
        "db_bytes_ready": 319676416,
        "ready_ms": 21732.886776,
        "settled_ms": 21791.976091999997,
        "wal_bytes_ready": 360578312
      }
    ],
    "tasks": 22759.262204,
    "tasks_ready_ms": 22690.590387,
    "tasks_runs": [
      22759.262204,
      22722.476928,
      22842.321119,
      22816.871177,
      23128.889584,
      22710.538213,
      22756.679227,
      22716.100497,
      22732.888936,
      22881.557517,
      22820.616804,
      22774.771381000002,
      22550.081392,
      22843.666713000002,
      22546.026444
    ],
    "tasks_samples": [
      {
        "db_bytes_ready": 349044736,
        "ready_ms": 22690.590387,
        "settled_ms": 22759.262204,
        "wal_bytes_ready": 391754352
      },
      {
        "db_bytes_ready": 348893184,
        "ready_ms": 22659.57615,
        "settled_ms": 22722.476928,
        "wal_bytes_ready": 390979792
      },
      {
        "db_bytes_ready": 348938240,
        "ready_ms": 22777.174192,
        "settled_ms": 22842.321119,
        "wal_bytes_ready": 391004512
      },
      {
        "db_bytes_ready": 349077504,
        "ready_ms": 22722.834854999997,
        "settled_ms": 22816.871177,
        "wal_bytes_ready": 390740832
      },
      {
        "db_bytes_ready": 348942336,
        "ready_ms": 23067.765682,
        "settled_ms": 23128.889584,
        "wal_bytes_ready": 391581312
      },
      {
        "db_bytes_ready": 349159424,
        "ready_ms": 22640.61684,
        "settled_ms": 22710.538213,
        "wal_bytes_ready": 390975672
      },
      {
        "db_bytes_ready": 349282304,
        "ready_ms": 22669.6401,
        "settled_ms": 22756.679227,
        "wal_bytes_ready": 391737872
      },
      {
        "db_bytes_ready": 349003776,
        "ready_ms": 22632.107711,
        "settled_ms": 22716.100497,
        "wal_bytes_ready": 390810872
      },
      {
        "db_bytes_ready": 348995584,
        "ready_ms": 22675.405014,
        "settled_ms": 22732.888936,
        "wal_bytes_ready": 390975672
      },
      {
        "db_bytes_ready": 349069312,
        "ready_ms": 22776.207367000003,
        "settled_ms": 22881.557517,
        "wal_bytes_ready": 392256992
      },
      {
        "db_bytes_ready": 349233152,
        "ready_ms": 22758.430288,
        "settled_ms": 22820.616804,
        "wal_bytes_ready": 392224032
      },
      {
        "db_bytes_ready": 349110272,
        "ready_ms": 22706.384158999997,
        "settled_ms": 22774.771381000002,
        "wal_bytes_ready": 390085752
      },
      {
        "db_bytes_ready": 349458432,
        "ready_ms": 22488.795173,
        "settled_ms": 22550.081392,
        "wal_bytes_ready": 391255832
      },
      {
        "db_bytes_ready": 349114368,
        "ready_ms": 22784.145895,
        "settled_ms": 22843.666713000002,
        "wal_bytes_ready": 391033352
      },
      {
        "db_bytes_ready": 349106176,
        "ready_ms": 22481.513036,
        "settled_ms": 22546.026444,
        "wal_bytes_ready": 391989192
      }
    ]
  },
  "describe_ms": {
    "pass": {
      "max": 0.468928,
      "n": 20000,
      "p50": 0.002875,
      "p95": 0.017061,
      "p99": 0.041236999999999996
    },
    "pass_and_rows": {
      "max": 0.9282290000000001,
      "n": 20000,
      "p50": 0.012263,
      "p95": 0.030858,
      "p99": 0.061995999999999996
    }
  },
  "list_ms": {
    "anytime": {
      "matching": 8543,
      "max": 7.560509,
      "n": 200,
      "p50": 5.989798,
      "p95": 6.659693000000001,
      "p99": 7.258584
    },
    "anytime_by_child_tag": {
      "matching": 8759,
      "max": 20.695498999999998,
      "n": 200,
      "p50": 15.180340000000001,
      "p95": 17.097791,
      "p99": 19.971353
    },
    "counts": {
      "max": 1.872107,
      "n": 200,
      "p50": 1.6380469999999998,
      "p95": 1.789251,
      "p99": 1.844875
    },
    "someday": {
      "matching": 7957,
      "max": 8.375304999999999,
      "n": 200,
      "p50": 5.753094,
      "p95": 6.480978,
      "p99": 8.211958000000001
    },
    "tag": {
      "matching": 8092,
      "max": 16.324233,
      "n": 200,
      "p50": 14.393507,
      "p95": 15.219422999999999,
      "p99": 15.560572
    },
    "today": {
      "matching": 10766,
      "max": 14.194414,
      "n": 200,
      "p50": 8.851387,
      "p95": 9.631779,
      "p99": 10.878965
    },
    "today_by_priority": {
      "matching": 10766,
      "max": 10.361926,
      "n": 200,
      "p50": 7.991244999999999,
      "p95": 8.936476,
      "p99": 10.095737
    },
    "untracked": {
      "max": 1.0614190000000001,
      "n": 200,
      "p50": 0.756417,
      "p95": 0.937956,
      "p99": 1.028377
    },
    "upcoming": {
      "matching": 15222,
      "max": 10.738971999999999,
      "n": 200,
      "p50": 9.503457,
      "p95": 9.982835000000001,
      "p99": 10.304728
    }
  },
  "notes": 100000,
  "tasks": 100000,
  "write_ms": {
    "first_touch": {
      "max": 60.576109,
      "n": 60,
      "p50": 5.2510639999999995,
      "p95": 6.042767,
      "p99": 25.204343
    },
    "warm": {
      "max": 29.615506,
      "n": 2340,
      "p50": 2.821384,
      "p95": 5.339179000000001,
      "p99": 16.543833
    }
  }
}

Gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
Tasks report 2/3 at 100000 base notes plus 100000 task notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 740.0 seconds. Fixture Homes and state deleted. Output verbatim: ```text making a Home of 100000 notes adding 100000 task notes cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f cold plain run 0: {"ready_ms":24657.035348,"settled_ms":24748.045724,"wal_bytes_ready":359325832,"db_bytes_ready":319844352} cold tasks run 0: {"ready_ms":22690.590387,"settled_ms":22759.262204,"wal_bytes_ready":391754352,"db_bytes_ready":349044736} cold tasks run 1: {"ready_ms":22659.57615,"settled_ms":22722.476928,"wal_bytes_ready":390979792,"db_bytes_ready":348893184} cold plain run 1: {"ready_ms":21781.451326,"settled_ms":21842.992835,"wal_bytes_ready":359189872,"db_bytes_ready":320000000} cold plain run 2: {"ready_ms":21619.660776,"settled_ms":21699.437679,"wal_bytes_ready":360607152,"db_bytes_ready":320102400} cold tasks run 2: {"ready_ms":22777.174192,"settled_ms":22842.321119,"wal_bytes_ready":391004512,"db_bytes_ready":348938240} cold tasks run 3: {"ready_ms":22722.834854999997,"settled_ms":22816.871177,"wal_bytes_ready":390740832,"db_bytes_ready":349077504} cold plain run 3: {"ready_ms":21424.499742999997,"settled_ms":21469.421913000002,"wal_bytes_ready":359803752,"db_bytes_ready":319807488} cold plain run 4: {"ready_ms":21659.068806,"settled_ms":21721.95882,"wal_bytes_ready":359985032,"db_bytes_ready":319856640} cold tasks run 4: {"ready_ms":23067.765682,"settled_ms":23128.889584,"wal_bytes_ready":391581312,"db_bytes_ready":348942336} cold tasks run 5: {"ready_ms":22640.61684,"settled_ms":22710.538213,"wal_bytes_ready":390975672,"db_bytes_ready":349159424} cold plain run 5: {"ready_ms":21777.449538999997,"settled_ms":21827.816095,"wal_bytes_ready":360046832,"db_bytes_ready":319926272} cold plain run 6: {"ready_ms":21749.478793000002,"settled_ms":21802.427366,"wal_bytes_ready":359095112,"db_bytes_ready":319963136} cold tasks run 6: {"ready_ms":22669.6401,"settled_ms":22756.679227,"wal_bytes_ready":391737872,"db_bytes_ready":349282304} cold tasks run 7: {"ready_ms":22632.107711,"settled_ms":22716.100497,"wal_bytes_ready":390810872,"db_bytes_ready":349003776} cold plain run 7: {"ready_ms":21574.389757999998,"settled_ms":21641.784147,"wal_bytes_ready":359659552,"db_bytes_ready":319918080} cold plain run 8: {"ready_ms":21672.524338,"settled_ms":21748.983070000002,"wal_bytes_ready":360092152,"db_bytes_ready":319860736} cold tasks run 8: {"ready_ms":22675.405014,"settled_ms":22732.888936,"wal_bytes_ready":390975672,"db_bytes_ready":348995584} cold tasks run 9: {"ready_ms":22776.207367000003,"settled_ms":22881.557517,"wal_bytes_ready":392256992,"db_bytes_ready":349069312} cold plain run 9: {"ready_ms":22083.216722,"settled_ms":22139.882604,"wal_bytes_ready":360149832,"db_bytes_ready":319844352} cold plain run 10: {"ready_ms":21587.427604999997,"settled_ms":21658.821273,"wal_bytes_ready":360751352,"db_bytes_ready":319983616} cold tasks run 10: {"ready_ms":22758.430288,"settled_ms":22820.616804,"wal_bytes_ready":392224032,"db_bytes_ready":349233152} cold tasks run 11: {"ready_ms":22706.384158999997,"settled_ms":22774.771381000002,"wal_bytes_ready":390085752,"db_bytes_ready":349110272} cold plain run 11: {"ready_ms":21795.145841,"settled_ms":21862.302333,"wal_bytes_ready":359523592,"db_bytes_ready":320057344} cold plain run 12: {"ready_ms":21465.953127999997,"settled_ms":21534.400473,"wal_bytes_ready":360364072,"db_bytes_ready":319852544} cold tasks run 12: {"ready_ms":22488.795173,"settled_ms":22550.081392,"wal_bytes_ready":391255832,"db_bytes_ready":349458432} cold tasks run 13: {"ready_ms":22784.145895,"settled_ms":22843.666713000002,"wal_bytes_ready":391033352,"db_bytes_ready":349114368} cold plain run 13: {"ready_ms":21687.16015,"settled_ms":21754.574693,"wal_bytes_ready":359008592,"db_bytes_ready":319811584} cold plain run 14: {"ready_ms":21732.886776,"settled_ms":21791.976091999997,"wal_bytes_ready":360578312,"db_bytes_ready":319676416} cold tasks run 14: {"ready_ms":22481.513036,"settled_ms":22546.026444,"wal_bytes_ready":391989192,"db_bytes_ready":349106176} counts: {"anytime":8543,"incomplete":false,"someday":7957,"tags":{"cooking":1018,"errands":8092,"errands/a":47,"errands/about":50,"errands/after":63,"errands/again":48,"errands/already":71,"errands/always":67,"errands/and":43,"errands/answer":63,"errands/appointment":56,"errands/as":54,"errands/at":53,"errands/backup":55,"errands/before":62,"errands/book":68,"errands/bread":65,"errands/bright":45,"errands/brother":51,"errands/budget":59,"errands/bug":62,"errands/busy":50,"errands/but":58,"errands/buy":57,"errands/café":62,"errands/call":51,"errands/calm":50,"errands/carefully":43,"errands/chai":58,"errands/change":48,"errands/chapter":63,"errands/coffee":75,"errands/cold":69,"errands/colour":47,"errands/dal":64,"errands/dark":46,"errands/design":69,"errands/doctor":56,"errands/draft":45,"errands/early":51,"errands/easy":51,"errands/editor":58,"errands/evening":55,"errands/family":48,"errands/finish":60,"errands/fix":50,"errands/flight":55,"errands/for":58,"errands/forget":60,"errands/friends":44,"errands/from":52,"errands/garden":53,"errands/good":55,"errands/guitar":64,"errands/happy":51,"errands/hard":66,"errands/honestly":60,"errands/hotel":57,"errands/idea":54,"errands/in":57,"errands/into":59,"errands/invoice":64,"errands/is":54,"errands/it":63,"errands/keep":60,"errands/keyboard":53,"errands/kitchen":59,"errands/language":64,"errands/laptop":63,"errands/large":55,"errands/late":67,"errands/lesson":54,"errands/list":62,"errands/loud":56,"errands/lovely":54,"errands/market":52,"errands/maybe":65,"errands/meeting":62,"errands/monsoon":68,"errands/more":52,"errands/morning":56,"errands/move":57,"errands/music":63,"errands/naïve":60,"errands/never":61,"errands/new":47,"errands/notes":55,"errands/of":56,"errands/often":62,"errands/old":61,"errands/on":49,"errands/paper":59,"errands/parents":64,"errands/pencil":72,"errands/phone":65,"errands/plan":62,"errands/practice":52,"errands/probably":55,"errands/project":72,"errands/question":49,"errands/quickly":68,"errands/quiet":57,"errands/rain":60,"errands/read":62,"errands/really":46,"errands/recipe":62,"errands/release":60,"errands/remember":62,"errands/review":52,"errands/rice":64,"errands/run":68,"errands/résumé":54,"errands/screen":70,"errands/sell":48,"errands/sentence":66,"errands/server":56,"errands/sister":63,"errands/sketch":65,"errands/sleep":72,"errands/slowly":44,"errands/small":59,"errands/some":39,"errands/sometimes":57,"errands/song":65,"errands/start":57,"errands/station":40,"errands/still":71,"errands/strange":65,"errands/tea":59,"errands/that":56,"errands/the":51,"errands/they":70,"errands/think":59,"errands/this":55,"errands/tired":47,"errands/to":71,"errands/today":52,"errands/tomorrow":62,"errands/train":56,"errands/travel":48,"errands/try":61,"errands/vegetables":63,"errands/visa":53,"errands/walk":62,"errands/warm":57,"errands/was":57,"errands/we":54,"errands/weather":58,"errands/when":62,"errands/with":44,"errands/word":56,"errands/write":68,"errands/नमस्ते":71,"errands/ദിവസം":60,"errands/☕":51,"errands/日記":64,"errands/🌧️":56,"errands/👍":56,"family":1051,"film":1039,"garden":1054,"health":1048,"home":1043,"ideas":1014,"journal":1068,"learning":981,"money":1015,"music":1072,"people":1070,"project":2139,"project/calternal":1022,"project/house":1149,"reading":987,"run":1030,"todo":1033,"travel":1011,"work":1059,"writing":1067},"today":10766,"untracked":338090,"upcoming":15222} tasks-bench: 100000 notes + 100000 tasks cold.index plain 21755 ms, with tasks 22759 ms (+4.6 %) tasks.describe p50 0.0029 p95 0.0171 ms (with rows: p50 0.0123 p95 0.0309) anytime: p50 5.99 p95 6.66 p99 7.26 max 7.56 ms (n=200, 8543 matching) anytime_by_child_tag: p50 15.18 p95 17.10 p99 19.97 max 20.70 ms (n=200, 8759 matching) counts: p50 1.64 p95 1.79 p99 1.84 max 1.87 ms (n=200, null matching) someday: p50 5.75 p95 6.48 p99 8.21 max 8.38 ms (n=200, 7957 matching) tag: p50 14.39 p95 15.22 p99 15.56 max 16.32 ms (n=200, 8092 matching) today: p50 8.85 p95 9.63 p99 10.88 max 14.19 ms (n=200, 10766 matching) today_by_priority: p50 7.99 p95 8.94 p99 10.10 max 10.36 ms (n=200, 10766 matching) untracked: p50 0.76 p95 0.94 p99 1.03 max 1.06 ms (n=200, null matching) upcoming: p50 9.50 p95 9.98 p99 10.30 max 10.74 ms (n=200, 15222 matching) tasks.update first_touch: p50 5.25 p95 6.04 p99 25.20 max 60.58 ms (n=60) tasks.update warm: p50 2.82 p95 5.34 p99 16.54 max 29.62 ms (n=2340) GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS ``` All measurements and raw cold samples: ```json { "cold_index_ms": { "cache_mode": "dropped", "endpoint": "shutdown, empty WAL, sync -f complete", "growth_pct": 4.618281557686714, "plain": 21754.574693, "plain_ready_ms": 21687.16015, "plain_runs": [ 24748.045724, 21842.992835, 21699.437679, 21469.421913000002, 21721.95882, 21827.816095, 21802.427366, 21641.784147, 21748.983070000002, 22139.882604, 21658.821273, 21862.302333, 21534.400473, 21754.574693, 21791.976091999997 ], "plain_samples": [ { "db_bytes_ready": 319844352, "ready_ms": 24657.035348, "settled_ms": 24748.045724, "wal_bytes_ready": 359325832 }, { "db_bytes_ready": 320000000, "ready_ms": 21781.451326, "settled_ms": 21842.992835, "wal_bytes_ready": 359189872 }, { "db_bytes_ready": 320102400, "ready_ms": 21619.660776, "settled_ms": 21699.437679, "wal_bytes_ready": 360607152 }, { "db_bytes_ready": 319807488, "ready_ms": 21424.499742999997, "settled_ms": 21469.421913000002, "wal_bytes_ready": 359803752 }, { "db_bytes_ready": 319856640, "ready_ms": 21659.068806, "settled_ms": 21721.95882, "wal_bytes_ready": 359985032 }, { "db_bytes_ready": 319926272, "ready_ms": 21777.449538999997, "settled_ms": 21827.816095, "wal_bytes_ready": 360046832 }, { "db_bytes_ready": 319963136, "ready_ms": 21749.478793000002, "settled_ms": 21802.427366, "wal_bytes_ready": 359095112 }, { "db_bytes_ready": 319918080, "ready_ms": 21574.389757999998, "settled_ms": 21641.784147, "wal_bytes_ready": 359659552 }, { "db_bytes_ready": 319860736, "ready_ms": 21672.524338, "settled_ms": 21748.983070000002, "wal_bytes_ready": 360092152 }, { "db_bytes_ready": 319844352, "ready_ms": 22083.216722, "settled_ms": 22139.882604, "wal_bytes_ready": 360149832 }, { "db_bytes_ready": 319983616, "ready_ms": 21587.427604999997, "settled_ms": 21658.821273, "wal_bytes_ready": 360751352 }, { "db_bytes_ready": 320057344, "ready_ms": 21795.145841, "settled_ms": 21862.302333, "wal_bytes_ready": 359523592 }, { "db_bytes_ready": 319852544, "ready_ms": 21465.953127999997, "settled_ms": 21534.400473, "wal_bytes_ready": 360364072 }, { "db_bytes_ready": 319811584, "ready_ms": 21687.16015, "settled_ms": 21754.574693, "wal_bytes_ready": 359008592 }, { "db_bytes_ready": 319676416, "ready_ms": 21732.886776, "settled_ms": 21791.976091999997, "wal_bytes_ready": 360578312 } ], "tasks": 22759.262204, "tasks_ready_ms": 22690.590387, "tasks_runs": [ 22759.262204, 22722.476928, 22842.321119, 22816.871177, 23128.889584, 22710.538213, 22756.679227, 22716.100497, 22732.888936, 22881.557517, 22820.616804, 22774.771381000002, 22550.081392, 22843.666713000002, 22546.026444 ], "tasks_samples": [ { "db_bytes_ready": 349044736, "ready_ms": 22690.590387, "settled_ms": 22759.262204, "wal_bytes_ready": 391754352 }, { "db_bytes_ready": 348893184, "ready_ms": 22659.57615, "settled_ms": 22722.476928, "wal_bytes_ready": 390979792 }, { "db_bytes_ready": 348938240, "ready_ms": 22777.174192, "settled_ms": 22842.321119, "wal_bytes_ready": 391004512 }, { "db_bytes_ready": 349077504, "ready_ms": 22722.834854999997, "settled_ms": 22816.871177, "wal_bytes_ready": 390740832 }, { "db_bytes_ready": 348942336, "ready_ms": 23067.765682, "settled_ms": 23128.889584, "wal_bytes_ready": 391581312 }, { "db_bytes_ready": 349159424, "ready_ms": 22640.61684, "settled_ms": 22710.538213, "wal_bytes_ready": 390975672 }, { "db_bytes_ready": 349282304, "ready_ms": 22669.6401, "settled_ms": 22756.679227, "wal_bytes_ready": 391737872 }, { "db_bytes_ready": 349003776, "ready_ms": 22632.107711, "settled_ms": 22716.100497, "wal_bytes_ready": 390810872 }, { "db_bytes_ready": 348995584, "ready_ms": 22675.405014, "settled_ms": 22732.888936, "wal_bytes_ready": 390975672 }, { "db_bytes_ready": 349069312, "ready_ms": 22776.207367000003, "settled_ms": 22881.557517, "wal_bytes_ready": 392256992 }, { "db_bytes_ready": 349233152, "ready_ms": 22758.430288, "settled_ms": 22820.616804, "wal_bytes_ready": 392224032 }, { "db_bytes_ready": 349110272, "ready_ms": 22706.384158999997, "settled_ms": 22774.771381000002, "wal_bytes_ready": 390085752 }, { "db_bytes_ready": 349458432, "ready_ms": 22488.795173, "settled_ms": 22550.081392, "wal_bytes_ready": 391255832 }, { "db_bytes_ready": 349114368, "ready_ms": 22784.145895, "settled_ms": 22843.666713000002, "wal_bytes_ready": 391033352 }, { "db_bytes_ready": 349106176, "ready_ms": 22481.513036, "settled_ms": 22546.026444, "wal_bytes_ready": 391989192 } ] }, "describe_ms": { "pass": { "max": 0.468928, "n": 20000, "p50": 0.002875, "p95": 0.017061, "p99": 0.041236999999999996 }, "pass_and_rows": { "max": 0.9282290000000001, "n": 20000, "p50": 0.012263, "p95": 0.030858, "p99": 0.061995999999999996 } }, "list_ms": { "anytime": { "matching": 8543, "max": 7.560509, "n": 200, "p50": 5.989798, "p95": 6.659693000000001, "p99": 7.258584 }, "anytime_by_child_tag": { "matching": 8759, "max": 20.695498999999998, "n": 200, "p50": 15.180340000000001, "p95": 17.097791, "p99": 19.971353 }, "counts": { "max": 1.872107, "n": 200, "p50": 1.6380469999999998, "p95": 1.789251, "p99": 1.844875 }, "someday": { "matching": 7957, "max": 8.375304999999999, "n": 200, "p50": 5.753094, "p95": 6.480978, "p99": 8.211958000000001 }, "tag": { "matching": 8092, "max": 16.324233, "n": 200, "p50": 14.393507, "p95": 15.219422999999999, "p99": 15.560572 }, "today": { "matching": 10766, "max": 14.194414, "n": 200, "p50": 8.851387, "p95": 9.631779, "p99": 10.878965 }, "today_by_priority": { "matching": 10766, "max": 10.361926, "n": 200, "p50": 7.991244999999999, "p95": 8.936476, "p99": 10.095737 }, "untracked": { "max": 1.0614190000000001, "n": 200, "p50": 0.756417, "p95": 0.937956, "p99": 1.028377 }, "upcoming": { "matching": 15222, "max": 10.738971999999999, "n": 200, "p50": 9.503457, "p95": 9.982835000000001, "p99": 10.304728 } }, "notes": 100000, "tasks": 100000, "write_ms": { "first_touch": { "max": 60.576109, "n": 60, "p50": 5.2510639999999995, "p95": 6.042767, "p99": 25.204343 }, "warm": { "max": 29.615506, "n": 2340, "p50": 2.821384, "p95": 5.339179000000001, "p99": 16.543833 } } } ``` Gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ```
Author
Owner

Fresh full server report 2/3 at 10000 notes on perf-test-01, head d23e80b949. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 541.6 seconds. Fixture Homes and state for this report have been deleted. No budgets changed.

Report verbatim:

Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational)

10000 notes (3000 daily, 35 MB, 5 long notes)

metric unit p50 p95 max noise runs × samples budget
cold.disk_written MB 46.4 46.4 46.4 0% 3 × 1
cold.first_page ms 45.7 51.4 51.4 22% 3 × 1
cold.index s 0.88 1.38 1.38 59% 3 × 1 p95 ≤ 10 ok
cold.mem_peak MB 68.0 68.4 68.4 3% 3 × 1
cold.notes_per_s notes/s 11392 11565 11565 38% 3 × 1 p50 ≥ 2000 ok
cold.startup ms 86.6 93.2 93.2 10% 3 × 1 p95 ≤ 500 ok
home.first_page ms 18.3 19.3 19.3 29% 5 × 1 p95 ≤ 300 ok
home.page ms 0.65 0.97 4.27 38% 5 × 20 p95 ≤ 50 ok
home.page_big ms 22.9 25.9 31.2 25% 5 × 5
home.page_next ms 0.89 1.28 5.39 41% 5 × 20 p95 ≤ 50 ok
home.page_tag ms 4.58 6.46 146 17% 5 × 20 p95 ≤ 50 ok
home.page_title ms 0.62 0.92 1.98 35% 5 × 20 p95 ≤ 50 ok
idle.cpu_pct % 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.1 ok
idle.cpu_ticks ticks 0.00 0.00 0.00 0% 1 × 1
idle.rss MB 36.7 36.7 36.7 0% 1 × 1
idle.threads count 15.0 15.0 15.0 0% 1 × 1
idle.wakeups_per_s /s 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.2 ok
journal.catch_up ms 37.7 50.4 50.4 49% 5 × 1 p95 ≤ 1000 ok
journal.entries count 10367 10722 10722 7% 5 × 1
journal.page ms 3.35 4.30 5.66 42% 5 × 11
load.typing_cpu_pct % 0.30 0.30 0.30 0% 1 × 1 p95 ≤ 2 ok
load.typing_wakeups_per_s /s 59.7 59.7 59.7 0% 1 × 1
mem.after_first_page MB 21.0 22.2 22.2 6% 5 × 1
mem.after_opens MB 42.2 42.9 42.9 10% 5 × 1
mem.after_search MB 43.7 45.7 45.7 7% 5 × 1
mem.idle MB 17.8 17.9 17.9 7% 5 × 1 p95 ≤ 64 ok
mem.peak MB 45.7 46.8 46.8 6% 5 × 1 p95 ≤ 256 ok
open.api_get ms 5.16 6.85 17.1 47% 5 × 24 p95 ≤ 50 ok
open.long_note ms 13.5 43.5 43.5 233% 5 × 1 p95 ≤ 250 ok
open.note ms 1.49 7.26 18.0 41% 5 × 24 p95 ≤ 15 ok
search.catch_up s 2.02 2.02 4.01 100% 5 × 3
search.first_query ms 31.8 38.5 38.5 48% 5 × 1 p95 ≤ 1000 ok
search.query ms 2.07 10.2 28.5 32% 5 × 55 p95 ≤ 100 ok
shutdown ms 64.7 72.5 72.5 14% 5 × 1 p95 ≤ 1000 ok
startup.healthz ms 78.9 101 101 34% 5 × 1 p95 ≤ 300 ok
storm.converge ms 166 177 177 7% 5 × 1 p95 ≤ 2000 ok
storm.disk_written MB 40.6 43.0 43.0 17% 5 × 1 p95 ≤ 50 ok
storm.dropped_clients count 0.00 0.00 0.00 0% 5 × 1 p95 ≤ 0 ok
storm.edits_per_s edits/s 5595 5623 5623 2% 5 × 1 p50 ≥ 1000 ok
storm.outside_edits count 4.00 4.00 4.00 0% 5 × 1
storm.save_ack ms 4.66 9.61 26.7 2% 5 × 10000 p95 ≤ 150 ok
storm.typing s 1.79 1.81 1.81 2% 5 × 1
sync.durable_write ms 12.0 16.4 127 2% 5 × 30
sync.round_trip ms 0.30 0.35 0.95 13% 5 × 200 p95 ≤ 10 ok
sync.save_ack ms 2.64 3.80 23.0 72% 5 × 200 p95 ≤ 40 ok
trash.delete ms 27.6 48.1 61.9 59% 5 × 30
trash.forget ms 5.51 11.1 27.2 12% 5 × 30
trash.restore ms 65.6 119 149 28% 5 × 30
uploads.response ms 94.3 121 149 4% 5 × 20
uploads.round_trip ms 1.08 1.28 3.47 2% 5 × 200
uploads.save_ack ms 3.38 4.53 15.5 1% 5 × 200

Gate output verbatim:

process exit=0

Binary and budget SHA-256:

{
  "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2",
  "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e",
  "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9",
  "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d"
}
Fresh full server report 2/3 at 10000 notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 541.6 seconds. Fixture Homes and state for this report have been deleted. No budgets changed. Report verbatim: Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational) ### 10000 notes (3000 daily, 35 MB, 5 long notes) | metric | unit | p50 | p95 | max | noise | runs × samples | budget | | |---|---|---:|---:|---:|---:|---:|---|---| | cold.disk_written | MB | 46.4 | 46.4 | 46.4 | 0% | 3 × 1 | | | | cold.first_page | ms | 45.7 | 51.4 | 51.4 | 22% | 3 × 1 | | | | cold.index | s | 0.88 | 1.38 | 1.38 | 59% | 3 × 1 | p95 ≤ 10 | ok | | cold.mem_peak | MB | 68.0 | 68.4 | 68.4 | 3% | 3 × 1 | | | | cold.notes_per_s | notes/s | 11392 | 11565 | 11565 | 38% | 3 × 1 | p50 ≥ 2000 | ok | | cold.startup | ms | 86.6 | 93.2 | 93.2 | 10% | 3 × 1 | p95 ≤ 500 | ok | | home.first_page | ms | 18.3 | 19.3 | 19.3 | 29% | 5 × 1 | p95 ≤ 300 | ok | | home.page | ms | 0.65 | 0.97 | 4.27 | 38% | 5 × 20 | p95 ≤ 50 | ok | | home.page_big | ms | 22.9 | 25.9 | 31.2 | 25% | 5 × 5 | | | | home.page_next | ms | 0.89 | 1.28 | 5.39 | 41% | 5 × 20 | p95 ≤ 50 | ok | | home.page_tag | ms | 4.58 | 6.46 | 146 | 17% | 5 × 20 | p95 ≤ 50 | ok | | home.page_title | ms | 0.62 | 0.92 | 1.98 | 35% | 5 × 20 | p95 ≤ 50 | ok | | idle.cpu_pct | % | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.1 | ok | | idle.cpu_ticks | ticks | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | | | | idle.rss | MB | 36.7 | 36.7 | 36.7 | 0% | 1 × 1 | | | | idle.threads | count | 15.0 | 15.0 | 15.0 | 0% | 1 × 1 | | | | idle.wakeups_per_s | /s | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.2 | ok | | journal.catch_up | ms | 37.7 | 50.4 | 50.4 | 49% | 5 × 1 | p95 ≤ 1000 | ok | | journal.entries | count | 10367 | 10722 | 10722 | 7% | 5 × 1 | | | | journal.page | ms | 3.35 | 4.30 | 5.66 | 42% | 5 × 11 | | | | load.typing_cpu_pct | % | 0.30 | 0.30 | 0.30 | 0% | 1 × 1 | p95 ≤ 2 | ok | | load.typing_wakeups_per_s | /s | 59.7 | 59.7 | 59.7 | 0% | 1 × 1 | | | | mem.after_first_page | MB | 21.0 | 22.2 | 22.2 | 6% | 5 × 1 | | | | mem.after_opens | MB | 42.2 | 42.9 | 42.9 | 10% | 5 × 1 | | | | mem.after_search | MB | 43.7 | 45.7 | 45.7 | 7% | 5 × 1 | | | | mem.idle | MB | 17.8 | 17.9 | 17.9 | 7% | 5 × 1 | p95 ≤ 64 | ok | | mem.peak | MB | 45.7 | 46.8 | 46.8 | 6% | 5 × 1 | p95 ≤ 256 | ok | | open.api_get | ms | 5.16 | 6.85 | 17.1 | 47% | 5 × 24 | p95 ≤ 50 | ok | | open.long_note | ms | 13.5 | 43.5 | 43.5 | 233% | 5 × 1 | p95 ≤ 250 | ok | | open.note | ms | 1.49 | 7.26 | 18.0 | 41% | 5 × 24 | p95 ≤ 15 | ok | | search.catch_up | s | 2.02 | 2.02 | 4.01 | 100% | 5 × 3 | | | | search.first_query | ms | 31.8 | 38.5 | 38.5 | 48% | 5 × 1 | p95 ≤ 1000 | ok | | search.query | ms | 2.07 | 10.2 | 28.5 | 32% | 5 × 55 | p95 ≤ 100 | ok | | shutdown | ms | 64.7 | 72.5 | 72.5 | 14% | 5 × 1 | p95 ≤ 1000 | ok | | startup.healthz | ms | 78.9 | 101 | 101 | 34% | 5 × 1 | p95 ≤ 300 | ok | | storm.converge | ms | 166 | 177 | 177 | 7% | 5 × 1 | p95 ≤ 2000 | ok | | storm.disk_written | MB | 40.6 | 43.0 | 43.0 | 17% | 5 × 1 | p95 ≤ 50 | ok | | storm.dropped_clients | count | 0.00 | 0.00 | 0.00 | 0% | 5 × 1 | p95 ≤ 0 | ok | | storm.edits_per_s | edits/s | 5595 | 5623 | 5623 | 2% | 5 × 1 | p50 ≥ 1000 | ok | | storm.outside_edits | count | 4.00 | 4.00 | 4.00 | 0% | 5 × 1 | | | | storm.save_ack | ms | 4.66 | 9.61 | 26.7 | 2% | 5 × 10000 | p95 ≤ 150 | ok | | storm.typing | s | 1.79 | 1.81 | 1.81 | 2% | 5 × 1 | | | | sync.durable_write | ms | 12.0 | 16.4 | 127 | 2% | 5 × 30 | | | | sync.round_trip | ms | 0.30 | 0.35 | 0.95 | 13% | 5 × 200 | p95 ≤ 10 | ok | | sync.save_ack | ms | 2.64 | 3.80 | 23.0 | 72% | 5 × 200 | p95 ≤ 40 | ok | | trash.delete | ms | 27.6 | 48.1 | 61.9 | 59% | 5 × 30 | | | | trash.forget | ms | 5.51 | 11.1 | 27.2 | 12% | 5 × 30 | | | | trash.restore | ms | 65.6 | 119 | 149 | 28% | 5 × 30 | | | | uploads.response | ms | 94.3 | 121 | 149 | 4% | 5 × 20 | | | | uploads.round_trip | ms | 1.08 | 1.28 | 3.47 | 2% | 5 × 200 | | | | uploads.save_ack | ms | 3.38 | 4.53 | 15.5 | 1% | 5 × 200 | | | Gate output verbatim: ```text process exit=0 ``` Binary and budget SHA-256: ```json { "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2", "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e", "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9", "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d" } ```
Author
Owner

Tasks report 2/3 at 10000 base notes plus 10000 task notes on perf-test-01, head d23e80b949. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 68.5 seconds. Fixture Homes and state deleted.

Output verbatim:

making a Home of 10000 notes
adding 10000 task notes
cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f
cold plain run 0: {"ready_ms":1126.798797,"settled_ms":1166.9218329999999,"wal_bytes_ready":30862952,"db_bytes_ready":29237248}
cold tasks run 0: {"ready_ms":1190.782038,"settled_ms":1217.466154,"wal_bytes_ready":34352592,"db_bytes_ready":32030720}
cold tasks run 1: {"ready_ms":2729.204092,"settled_ms":2754.213641,"wal_bytes_ready":33998272,"db_bytes_ready":32055296}
cold plain run 1: {"ready_ms":1638.6086070000001,"settled_ms":1683.300493,"wal_bytes_ready":31143112,"db_bytes_ready":29241344}
cold plain run 2: {"ready_ms":1525.074337,"settled_ms":1550.161702,"wal_bytes_ready":30644592,"db_bytes_ready":29233152}
cold tasks run 2: {"ready_ms":1626.526503,"settled_ms":1650.4115559999998,"wal_bytes_ready":34472072,"db_bytes_ready":32047104}
cold tasks run 3: {"ready_ms":1636.798943,"settled_ms":1661.610672,"wal_bytes_ready":34352592,"db_bytes_ready":32063488}
cold plain run 3: {"ready_ms":1553.5805329999998,"settled_ms":1579.661801,"wal_bytes_ready":30978312,"db_bytes_ready":29237248}
cold plain run 4: {"ready_ms":1564.672388,"settled_ms":1589.726541,"wal_bytes_ready":31007152,"db_bytes_ready":29196288}
cold tasks run 4: {"ready_ms":1614.238909,"settled_ms":1660.731009,"wal_bytes_ready":34031232,"db_bytes_ready":32075776}
cold tasks run 5: {"ready_ms":1706.874568,"settled_ms":1753.2202240000001,"wal_bytes_ready":34039472,"db_bytes_ready":32014336}
cold plain run 5: {"ready_ms":1536.981111,"settled_ms":1560.526377,"wal_bytes_ready":30891792,"db_bytes_ready":29253632}
cold plain run 6: {"ready_ms":1591.9793100000002,"settled_ms":1618.1719150000001,"wal_bytes_ready":30694032,"db_bytes_ready":29208576}
cold tasks run 6: {"ready_ms":1678.464424,"settled_ms":1728.61041,"wal_bytes_ready":34402032,"db_bytes_ready":32022528}
cold tasks run 7: {"ready_ms":1665.6613089999998,"settled_ms":1701.505048,"wal_bytes_ready":34142472,"db_bytes_ready":32022528}
cold plain run 7: {"ready_ms":1603.9134960000001,"settled_ms":1619.886815,"wal_bytes_ready":30677552,"db_bytes_ready":29229056}
cold plain run 8: {"ready_ms":1614.5867360000002,"settled_ms":1640.2443799999999,"wal_bytes_ready":30867072,"db_bytes_ready":29196288}
cold tasks run 8: {"ready_ms":1662.598506,"settled_ms":1687.5854630000001,"wal_bytes_ready":34055952,"db_bytes_ready":32038912}
cold tasks run 9: {"ready_ms":1659.0995130000001,"settled_ms":1686.462141,"wal_bytes_ready":34270192,"db_bytes_ready":31985664}
cold plain run 9: {"ready_ms":1599.573253,"settled_ms":1623.882941,"wal_bytes_ready":30846472,"db_bytes_ready":29233152}
cold plain run 10: {"ready_ms":1554.284409,"settled_ms":1600.822907,"wal_bytes_ready":30974192,"db_bytes_ready":29233152}
cold tasks run 10: {"ready_ms":1645.073971,"settled_ms":1669.3759539999999,"wal_bytes_ready":34002392,"db_bytes_ready":32043008}
cold tasks run 11: {"ready_ms":1668.600713,"settled_ms":1695.66437,"wal_bytes_ready":33973552,"db_bytes_ready":32063488}
cold plain run 11: {"ready_ms":1541.121994,"settled_ms":1565.7114760000002,"wal_bytes_ready":30689912,"db_bytes_ready":29224960}
cold plain run 12: {"ready_ms":1546.931941,"settled_ms":1572.764804,"wal_bytes_ready":30858832,"db_bytes_ready":29253632}
cold tasks run 12: {"ready_ms":1682.602033,"settled_ms":1707.6213010000001,"wal_bytes_ready":34043592,"db_bytes_ready":32043008}
cold tasks run 13: {"ready_ms":1636.789037,"settled_ms":1679.032588,"wal_bytes_ready":34055952,"db_bytes_ready":32038912}
cold plain run 13: {"ready_ms":1606.9044460000002,"settled_ms":1654.823881,"wal_bytes_ready":31056592,"db_bytes_ready":29253632}
cold plain run 14: {"ready_ms":1538.403169,"settled_ms":1563.132283,"wal_bytes_ready":31167832,"db_bytes_ready":29233152}
cold tasks run 14: {"ready_ms":1625.5861029999999,"settled_ms":1651.693419,"wal_bytes_ready":33825232,"db_bytes_ready":32043008}
counts: {"anytime":868,"incomplete":false,"someday":822,"tags":{"cooking":97,"errands":809,"errands/a":6,"errands/about":3,"errands/after":6,"errands/again":3,"errands/already":6,"errands/always":9,"errands/and":2,"errands/answer":5,"errands/appointment":5,"errands/as":6,"errands/at":6,"errands/backup":4,"errands/before":8,"errands/book":13,"errands/bread":3,"errands/bright":4,"errands/brother":12,"errands/budget":5,"errands/bug":6,"errands/busy":7,"errands/but":5,"errands/café":6,"errands/call":5,"errands/calm":5,"errands/carefully":8,"errands/chai":5,"errands/change":4,"errands/chapter":6,"errands/coffee":9,"errands/cold":8,"errands/colour":3,"errands/dal":7,"errands/dark":1,"errands/design":10,"errands/doctor":5,"errands/draft":5,"errands/early":6,"errands/easy":4,"errands/editor":7,"errands/evening":5,"errands/family":2,"errands/finish":4,"errands/fix":4,"errands/flight":7,"errands/for":3,"errands/forget":6,"errands/friends":2,"errands/from":10,"errands/garden":4,"errands/good":9,"errands/guitar":9,"errands/happy":4,"errands/hard":9,"errands/honestly":4,"errands/hotel":5,"errands/idea":4,"errands/in":3,"errands/into":6,"errands/invoice":6,"errands/is":3,"errands/it":9,"errands/keep":4,"errands/keyboard":6,"errands/kitchen":6,"errands/language":8,"errands/laptop":2,"errands/large":5,"errands/late":5,"errands/lesson":6,"errands/list":4,"errands/loud":3,"errands/lovely":4,"errands/market":4,"errands/maybe":6,"errands/meeting":7,"errands/monsoon":5,"errands/more":6,"errands/move":6,"errands/music":4,"errands/naïve":8,"errands/never":7,"errands/new":9,"errands/notes":6,"errands/of":8,"errands/often":8,"errands/old":6,"errands/on":5,"errands/paper":8,"errands/parents":7,"errands/pencil":12,"errands/phone":4,"errands/plan":9,"errands/practice":10,"errands/probably":3,"errands/project":6,"errands/question":7,"errands/quickly":5,"errands/quiet":5,"errands/rain":5,"errands/read":2,"errands/really":2,"errands/recipe":8,"errands/release":6,"errands/remember":7,"errands/review":6,"errands/rice":11,"errands/run":9,"errands/résumé":5,"errands/screen":3,"errands/sell":4,"errands/sentence":2,"errands/server":4,"errands/sister":6,"errands/sketch":9,"errands/sleep":9,"errands/slowly":4,"errands/small":10,"errands/some":3,"errands/sometimes":8,"errands/song":9,"errands/start":8,"errands/station":6,"errands/still":4,"errands/strange":4,"errands/tea":1,"errands/that":8,"errands/the":6,"errands/they":4,"errands/think":4,"errands/this":7,"errands/tired":3,"errands/to":5,"errands/today":7,"errands/tomorrow":5,"errands/train":5,"errands/travel":5,"errands/try":7,"errands/vegetables":10,"errands/visa":9,"errands/walk":4,"errands/warm":6,"errands/we":9,"errands/weather":6,"errands/when":3,"errands/with":5,"errands/word":2,"errands/write":9,"errands/नमस्ते":11,"errands/ദിവസം":7,"errands/☕":2,"errands/日記":8,"errands/🌧️":2,"errands/👍":7,"family":99,"film":106,"garden":103,"health":107,"home":91,"ideas":99,"journal":104,"learning":96,"money":90,"music":123,"people":105,"project":237,"project/calternal":133,"project/house":109,"reading":104,"run":90,"todo":107,"travel":99,"work":96,"writing":132},"today":1044,"untracked":26708,"upcoming":1513}
tasks-bench: 10000 notes + 10000 tasks
cold.index plain 1590 ms, with tasks 1686 ms (+6.1 %)
tasks.describe p50 0.0029 p95 0.0140 ms (with rows: p50 0.0122 p95 0.0326)
               anytime: p50 1.94 p95 2.30 p99 2.56 max 2.64 ms (n=200, 868 matching)
  anytime_by_child_tag: p50 2.46 p95 2.68 p99 3.01 max 3.31 ms (n=200, 886 matching)
                counts: p50 0.24 p95 0.27 p99 0.31 max 0.43 ms (n=200, null matching)
               someday: p50 1.92 p95 2.23 p99 2.65 max 3.33 ms (n=200, 822 matching)
                   tag: p50 2.60 p95 2.97 p99 3.38 max 3.61 ms (n=200, 809 matching)
                 today: p50 2.33 p95 2.98 p99 3.19 max 3.40 ms (n=200, 1044 matching)
     today_by_priority: p50 2.27 p95 2.44 p99 2.54 max 2.66 ms (n=200, 1044 matching)
             untracked: p50 0.70 p95 0.85 p99 0.95 max 1.02 ms (n=200, null matching)
              upcoming: p50 2.40 p95 2.80 p99 3.04 max 3.55 ms (n=200, 1513 matching)
tasks.update first_touch: p50 5.28 p95 5.83 p99 19.65 max 30.65 ms (n=60)
tasks.update        warm: p50 2.81 p95 6.22 p99 14.66 max 35.22 ms (n=2340)
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS

All measurements and raw cold samples:

{
  "cold_index_ms": {
    "cache_mode": "dropped",
    "endpoint": "shutdown, empty WAL, sync -f complete",
    "growth_pct": 6.085046547637653,
    "plain": 1589.726541,
    "plain_ready_ms": 1554.284409,
    "plain_runs": [
      1166.9218329999999,
      1683.300493,
      1550.161702,
      1579.661801,
      1589.726541,
      1560.526377,
      1618.1719150000001,
      1619.886815,
      1640.2443799999999,
      1623.882941,
      1600.822907,
      1565.7114760000002,
      1572.764804,
      1654.823881,
      1563.132283
    ],
    "plain_samples": [
      {
        "db_bytes_ready": 29237248,
        "ready_ms": 1126.798797,
        "settled_ms": 1166.9218329999999,
        "wal_bytes_ready": 30862952
      },
      {
        "db_bytes_ready": 29241344,
        "ready_ms": 1638.6086070000001,
        "settled_ms": 1683.300493,
        "wal_bytes_ready": 31143112
      },
      {
        "db_bytes_ready": 29233152,
        "ready_ms": 1525.074337,
        "settled_ms": 1550.161702,
        "wal_bytes_ready": 30644592
      },
      {
        "db_bytes_ready": 29237248,
        "ready_ms": 1553.5805329999998,
        "settled_ms": 1579.661801,
        "wal_bytes_ready": 30978312
      },
      {
        "db_bytes_ready": 29196288,
        "ready_ms": 1564.672388,
        "settled_ms": 1589.726541,
        "wal_bytes_ready": 31007152
      },
      {
        "db_bytes_ready": 29253632,
        "ready_ms": 1536.981111,
        "settled_ms": 1560.526377,
        "wal_bytes_ready": 30891792
      },
      {
        "db_bytes_ready": 29208576,
        "ready_ms": 1591.9793100000002,
        "settled_ms": 1618.1719150000001,
        "wal_bytes_ready": 30694032
      },
      {
        "db_bytes_ready": 29229056,
        "ready_ms": 1603.9134960000001,
        "settled_ms": 1619.886815,
        "wal_bytes_ready": 30677552
      },
      {
        "db_bytes_ready": 29196288,
        "ready_ms": 1614.5867360000002,
        "settled_ms": 1640.2443799999999,
        "wal_bytes_ready": 30867072
      },
      {
        "db_bytes_ready": 29233152,
        "ready_ms": 1599.573253,
        "settled_ms": 1623.882941,
        "wal_bytes_ready": 30846472
      },
      {
        "db_bytes_ready": 29233152,
        "ready_ms": 1554.284409,
        "settled_ms": 1600.822907,
        "wal_bytes_ready": 30974192
      },
      {
        "db_bytes_ready": 29224960,
        "ready_ms": 1541.121994,
        "settled_ms": 1565.7114760000002,
        "wal_bytes_ready": 30689912
      },
      {
        "db_bytes_ready": 29253632,
        "ready_ms": 1546.931941,
        "settled_ms": 1572.764804,
        "wal_bytes_ready": 30858832
      },
      {
        "db_bytes_ready": 29253632,
        "ready_ms": 1606.9044460000002,
        "settled_ms": 1654.823881,
        "wal_bytes_ready": 31056592
      },
      {
        "db_bytes_ready": 29233152,
        "ready_ms": 1538.403169,
        "settled_ms": 1563.132283,
        "wal_bytes_ready": 31167832
      }
    ],
    "tasks": 1686.462141,
    "tasks_ready_ms": 1659.0995130000001,
    "tasks_runs": [
      1217.466154,
      2754.213641,
      1650.4115559999998,
      1661.610672,
      1660.731009,
      1753.2202240000001,
      1728.61041,
      1701.505048,
      1687.5854630000001,
      1686.462141,
      1669.3759539999999,
      1695.66437,
      1707.6213010000001,
      1679.032588,
      1651.693419
    ],
    "tasks_samples": [
      {
        "db_bytes_ready": 32030720,
        "ready_ms": 1190.782038,
        "settled_ms": 1217.466154,
        "wal_bytes_ready": 34352592
      },
      {
        "db_bytes_ready": 32055296,
        "ready_ms": 2729.204092,
        "settled_ms": 2754.213641,
        "wal_bytes_ready": 33998272
      },
      {
        "db_bytes_ready": 32047104,
        "ready_ms": 1626.526503,
        "settled_ms": 1650.4115559999998,
        "wal_bytes_ready": 34472072
      },
      {
        "db_bytes_ready": 32063488,
        "ready_ms": 1636.798943,
        "settled_ms": 1661.610672,
        "wal_bytes_ready": 34352592
      },
      {
        "db_bytes_ready": 32075776,
        "ready_ms": 1614.238909,
        "settled_ms": 1660.731009,
        "wal_bytes_ready": 34031232
      },
      {
        "db_bytes_ready": 32014336,
        "ready_ms": 1706.874568,
        "settled_ms": 1753.2202240000001,
        "wal_bytes_ready": 34039472
      },
      {
        "db_bytes_ready": 32022528,
        "ready_ms": 1678.464424,
        "settled_ms": 1728.61041,
        "wal_bytes_ready": 34402032
      },
      {
        "db_bytes_ready": 32022528,
        "ready_ms": 1665.6613089999998,
        "settled_ms": 1701.505048,
        "wal_bytes_ready": 34142472
      },
      {
        "db_bytes_ready": 32038912,
        "ready_ms": 1662.598506,
        "settled_ms": 1687.5854630000001,
        "wal_bytes_ready": 34055952
      },
      {
        "db_bytes_ready": 31985664,
        "ready_ms": 1659.0995130000001,
        "settled_ms": 1686.462141,
        "wal_bytes_ready": 34270192
      },
      {
        "db_bytes_ready": 32043008,
        "ready_ms": 1645.073971,
        "settled_ms": 1669.3759539999999,
        "wal_bytes_ready": 34002392
      },
      {
        "db_bytes_ready": 32063488,
        "ready_ms": 1668.600713,
        "settled_ms": 1695.66437,
        "wal_bytes_ready": 33973552
      },
      {
        "db_bytes_ready": 32043008,
        "ready_ms": 1682.602033,
        "settled_ms": 1707.6213010000001,
        "wal_bytes_ready": 34043592
      },
      {
        "db_bytes_ready": 32038912,
        "ready_ms": 1636.789037,
        "settled_ms": 1679.032588,
        "wal_bytes_ready": 34055952
      },
      {
        "db_bytes_ready": 32043008,
        "ready_ms": 1625.5861029999999,
        "settled_ms": 1651.693419,
        "wal_bytes_ready": 33825232
      }
    ]
  },
  "describe_ms": {
    "pass": {
      "max": 0.417001,
      "n": 20000,
      "p50": 0.002905,
      "p95": 0.014036999999999999,
      "p99": 0.034725
    },
    "pass_and_rows": {
      "max": 0.534451,
      "n": 20000,
      "p50": 0.012153,
      "p95": 0.032591,
      "p99": 0.053891
    }
  },
  "list_ms": {
    "anytime": {
      "matching": 868,
      "max": 2.635307,
      "n": 200,
      "p50": 1.940977,
      "p95": 2.301772,
      "p99": 2.555899
    },
    "anytime_by_child_tag": {
      "matching": 886,
      "max": 3.3124759999999998,
      "n": 200,
      "p50": 2.456163,
      "p95": 2.676665,
      "p99": 3.013487
    },
    "counts": {
      "max": 0.428172,
      "n": 200,
      "p50": 0.239249,
      "p95": 0.272319,
      "p99": 0.31327699999999997
    },
    "someday": {
      "matching": 822,
      "max": 3.3340069999999997,
      "n": 200,
      "p50": 1.91637,
      "p95": 2.233444,
      "p99": 2.653931
    },
    "tag": {
      "matching": 809,
      "max": 3.605606,
      "n": 200,
      "p50": 2.601194,
      "p95": 2.967632,
      "p99": 3.378269
    },
    "today": {
      "matching": 1044,
      "max": 3.395272,
      "n": 200,
      "p50": 2.328443,
      "p95": 2.983279,
      "p99": 3.1931220000000002
    },
    "today_by_priority": {
      "matching": 1044,
      "max": 2.663109,
      "n": 200,
      "p50": 2.267238,
      "p95": 2.4372759999999998,
      "p99": 2.5358910000000003
    },
    "untracked": {
      "max": 1.020532,
      "n": 200,
      "p50": 0.698387,
      "p95": 0.852939,
      "p99": 0.9471660000000001
    },
    "upcoming": {
      "matching": 1513,
      "max": 3.55449,
      "n": 200,
      "p50": 2.398574,
      "p95": 2.804716,
      "p99": 3.038494
    }
  },
  "notes": 10000,
  "tasks": 10000,
  "write_ms": {
    "first_touch": {
      "max": 30.650609999999997,
      "n": 60,
      "p50": 5.280344,
      "p95": 5.834080999999999,
      "p99": 19.649948000000002
    },
    "warm": {
      "max": 35.222997,
      "n": 2340,
      "p50": 2.8079810000000003,
      "p95": 6.221618,
      "p99": 14.663984999999998
    }
  }
}

Gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
Tasks report 2/3 at 10000 base notes plus 10000 task notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 68.5 seconds. Fixture Homes and state deleted. Output verbatim: ```text making a Home of 10000 notes adding 10000 task notes cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f cold plain run 0: {"ready_ms":1126.798797,"settled_ms":1166.9218329999999,"wal_bytes_ready":30862952,"db_bytes_ready":29237248} cold tasks run 0: {"ready_ms":1190.782038,"settled_ms":1217.466154,"wal_bytes_ready":34352592,"db_bytes_ready":32030720} cold tasks run 1: {"ready_ms":2729.204092,"settled_ms":2754.213641,"wal_bytes_ready":33998272,"db_bytes_ready":32055296} cold plain run 1: {"ready_ms":1638.6086070000001,"settled_ms":1683.300493,"wal_bytes_ready":31143112,"db_bytes_ready":29241344} cold plain run 2: {"ready_ms":1525.074337,"settled_ms":1550.161702,"wal_bytes_ready":30644592,"db_bytes_ready":29233152} cold tasks run 2: {"ready_ms":1626.526503,"settled_ms":1650.4115559999998,"wal_bytes_ready":34472072,"db_bytes_ready":32047104} cold tasks run 3: {"ready_ms":1636.798943,"settled_ms":1661.610672,"wal_bytes_ready":34352592,"db_bytes_ready":32063488} cold plain run 3: {"ready_ms":1553.5805329999998,"settled_ms":1579.661801,"wal_bytes_ready":30978312,"db_bytes_ready":29237248} cold plain run 4: {"ready_ms":1564.672388,"settled_ms":1589.726541,"wal_bytes_ready":31007152,"db_bytes_ready":29196288} cold tasks run 4: {"ready_ms":1614.238909,"settled_ms":1660.731009,"wal_bytes_ready":34031232,"db_bytes_ready":32075776} cold tasks run 5: {"ready_ms":1706.874568,"settled_ms":1753.2202240000001,"wal_bytes_ready":34039472,"db_bytes_ready":32014336} cold plain run 5: {"ready_ms":1536.981111,"settled_ms":1560.526377,"wal_bytes_ready":30891792,"db_bytes_ready":29253632} cold plain run 6: {"ready_ms":1591.9793100000002,"settled_ms":1618.1719150000001,"wal_bytes_ready":30694032,"db_bytes_ready":29208576} cold tasks run 6: {"ready_ms":1678.464424,"settled_ms":1728.61041,"wal_bytes_ready":34402032,"db_bytes_ready":32022528} cold tasks run 7: {"ready_ms":1665.6613089999998,"settled_ms":1701.505048,"wal_bytes_ready":34142472,"db_bytes_ready":32022528} cold plain run 7: {"ready_ms":1603.9134960000001,"settled_ms":1619.886815,"wal_bytes_ready":30677552,"db_bytes_ready":29229056} cold plain run 8: {"ready_ms":1614.5867360000002,"settled_ms":1640.2443799999999,"wal_bytes_ready":30867072,"db_bytes_ready":29196288} cold tasks run 8: {"ready_ms":1662.598506,"settled_ms":1687.5854630000001,"wal_bytes_ready":34055952,"db_bytes_ready":32038912} cold tasks run 9: {"ready_ms":1659.0995130000001,"settled_ms":1686.462141,"wal_bytes_ready":34270192,"db_bytes_ready":31985664} cold plain run 9: {"ready_ms":1599.573253,"settled_ms":1623.882941,"wal_bytes_ready":30846472,"db_bytes_ready":29233152} cold plain run 10: {"ready_ms":1554.284409,"settled_ms":1600.822907,"wal_bytes_ready":30974192,"db_bytes_ready":29233152} cold tasks run 10: {"ready_ms":1645.073971,"settled_ms":1669.3759539999999,"wal_bytes_ready":34002392,"db_bytes_ready":32043008} cold tasks run 11: {"ready_ms":1668.600713,"settled_ms":1695.66437,"wal_bytes_ready":33973552,"db_bytes_ready":32063488} cold plain run 11: {"ready_ms":1541.121994,"settled_ms":1565.7114760000002,"wal_bytes_ready":30689912,"db_bytes_ready":29224960} cold plain run 12: {"ready_ms":1546.931941,"settled_ms":1572.764804,"wal_bytes_ready":30858832,"db_bytes_ready":29253632} cold tasks run 12: {"ready_ms":1682.602033,"settled_ms":1707.6213010000001,"wal_bytes_ready":34043592,"db_bytes_ready":32043008} cold tasks run 13: {"ready_ms":1636.789037,"settled_ms":1679.032588,"wal_bytes_ready":34055952,"db_bytes_ready":32038912} cold plain run 13: {"ready_ms":1606.9044460000002,"settled_ms":1654.823881,"wal_bytes_ready":31056592,"db_bytes_ready":29253632} cold plain run 14: {"ready_ms":1538.403169,"settled_ms":1563.132283,"wal_bytes_ready":31167832,"db_bytes_ready":29233152} cold tasks run 14: {"ready_ms":1625.5861029999999,"settled_ms":1651.693419,"wal_bytes_ready":33825232,"db_bytes_ready":32043008} counts: {"anytime":868,"incomplete":false,"someday":822,"tags":{"cooking":97,"errands":809,"errands/a":6,"errands/about":3,"errands/after":6,"errands/again":3,"errands/already":6,"errands/always":9,"errands/and":2,"errands/answer":5,"errands/appointment":5,"errands/as":6,"errands/at":6,"errands/backup":4,"errands/before":8,"errands/book":13,"errands/bread":3,"errands/bright":4,"errands/brother":12,"errands/budget":5,"errands/bug":6,"errands/busy":7,"errands/but":5,"errands/café":6,"errands/call":5,"errands/calm":5,"errands/carefully":8,"errands/chai":5,"errands/change":4,"errands/chapter":6,"errands/coffee":9,"errands/cold":8,"errands/colour":3,"errands/dal":7,"errands/dark":1,"errands/design":10,"errands/doctor":5,"errands/draft":5,"errands/early":6,"errands/easy":4,"errands/editor":7,"errands/evening":5,"errands/family":2,"errands/finish":4,"errands/fix":4,"errands/flight":7,"errands/for":3,"errands/forget":6,"errands/friends":2,"errands/from":10,"errands/garden":4,"errands/good":9,"errands/guitar":9,"errands/happy":4,"errands/hard":9,"errands/honestly":4,"errands/hotel":5,"errands/idea":4,"errands/in":3,"errands/into":6,"errands/invoice":6,"errands/is":3,"errands/it":9,"errands/keep":4,"errands/keyboard":6,"errands/kitchen":6,"errands/language":8,"errands/laptop":2,"errands/large":5,"errands/late":5,"errands/lesson":6,"errands/list":4,"errands/loud":3,"errands/lovely":4,"errands/market":4,"errands/maybe":6,"errands/meeting":7,"errands/monsoon":5,"errands/more":6,"errands/move":6,"errands/music":4,"errands/naïve":8,"errands/never":7,"errands/new":9,"errands/notes":6,"errands/of":8,"errands/often":8,"errands/old":6,"errands/on":5,"errands/paper":8,"errands/parents":7,"errands/pencil":12,"errands/phone":4,"errands/plan":9,"errands/practice":10,"errands/probably":3,"errands/project":6,"errands/question":7,"errands/quickly":5,"errands/quiet":5,"errands/rain":5,"errands/read":2,"errands/really":2,"errands/recipe":8,"errands/release":6,"errands/remember":7,"errands/review":6,"errands/rice":11,"errands/run":9,"errands/résumé":5,"errands/screen":3,"errands/sell":4,"errands/sentence":2,"errands/server":4,"errands/sister":6,"errands/sketch":9,"errands/sleep":9,"errands/slowly":4,"errands/small":10,"errands/some":3,"errands/sometimes":8,"errands/song":9,"errands/start":8,"errands/station":6,"errands/still":4,"errands/strange":4,"errands/tea":1,"errands/that":8,"errands/the":6,"errands/they":4,"errands/think":4,"errands/this":7,"errands/tired":3,"errands/to":5,"errands/today":7,"errands/tomorrow":5,"errands/train":5,"errands/travel":5,"errands/try":7,"errands/vegetables":10,"errands/visa":9,"errands/walk":4,"errands/warm":6,"errands/we":9,"errands/weather":6,"errands/when":3,"errands/with":5,"errands/word":2,"errands/write":9,"errands/नमस्ते":11,"errands/ദിവസം":7,"errands/☕":2,"errands/日記":8,"errands/🌧️":2,"errands/👍":7,"family":99,"film":106,"garden":103,"health":107,"home":91,"ideas":99,"journal":104,"learning":96,"money":90,"music":123,"people":105,"project":237,"project/calternal":133,"project/house":109,"reading":104,"run":90,"todo":107,"travel":99,"work":96,"writing":132},"today":1044,"untracked":26708,"upcoming":1513} tasks-bench: 10000 notes + 10000 tasks cold.index plain 1590 ms, with tasks 1686 ms (+6.1 %) tasks.describe p50 0.0029 p95 0.0140 ms (with rows: p50 0.0122 p95 0.0326) anytime: p50 1.94 p95 2.30 p99 2.56 max 2.64 ms (n=200, 868 matching) anytime_by_child_tag: p50 2.46 p95 2.68 p99 3.01 max 3.31 ms (n=200, 886 matching) counts: p50 0.24 p95 0.27 p99 0.31 max 0.43 ms (n=200, null matching) someday: p50 1.92 p95 2.23 p99 2.65 max 3.33 ms (n=200, 822 matching) tag: p50 2.60 p95 2.97 p99 3.38 max 3.61 ms (n=200, 809 matching) today: p50 2.33 p95 2.98 p99 3.19 max 3.40 ms (n=200, 1044 matching) today_by_priority: p50 2.27 p95 2.44 p99 2.54 max 2.66 ms (n=200, 1044 matching) untracked: p50 0.70 p95 0.85 p99 0.95 max 1.02 ms (n=200, null matching) upcoming: p50 2.40 p95 2.80 p99 3.04 max 3.55 ms (n=200, 1513 matching) tasks.update first_touch: p50 5.28 p95 5.83 p99 19.65 max 30.65 ms (n=60) tasks.update warm: p50 2.81 p95 6.22 p99 14.66 max 35.22 ms (n=2340) GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS ``` All measurements and raw cold samples: ```json { "cold_index_ms": { "cache_mode": "dropped", "endpoint": "shutdown, empty WAL, sync -f complete", "growth_pct": 6.085046547637653, "plain": 1589.726541, "plain_ready_ms": 1554.284409, "plain_runs": [ 1166.9218329999999, 1683.300493, 1550.161702, 1579.661801, 1589.726541, 1560.526377, 1618.1719150000001, 1619.886815, 1640.2443799999999, 1623.882941, 1600.822907, 1565.7114760000002, 1572.764804, 1654.823881, 1563.132283 ], "plain_samples": [ { "db_bytes_ready": 29237248, "ready_ms": 1126.798797, "settled_ms": 1166.9218329999999, "wal_bytes_ready": 30862952 }, { "db_bytes_ready": 29241344, "ready_ms": 1638.6086070000001, "settled_ms": 1683.300493, "wal_bytes_ready": 31143112 }, { "db_bytes_ready": 29233152, "ready_ms": 1525.074337, "settled_ms": 1550.161702, "wal_bytes_ready": 30644592 }, { "db_bytes_ready": 29237248, "ready_ms": 1553.5805329999998, "settled_ms": 1579.661801, "wal_bytes_ready": 30978312 }, { "db_bytes_ready": 29196288, "ready_ms": 1564.672388, "settled_ms": 1589.726541, "wal_bytes_ready": 31007152 }, { "db_bytes_ready": 29253632, "ready_ms": 1536.981111, "settled_ms": 1560.526377, "wal_bytes_ready": 30891792 }, { "db_bytes_ready": 29208576, "ready_ms": 1591.9793100000002, "settled_ms": 1618.1719150000001, "wal_bytes_ready": 30694032 }, { "db_bytes_ready": 29229056, "ready_ms": 1603.9134960000001, "settled_ms": 1619.886815, "wal_bytes_ready": 30677552 }, { "db_bytes_ready": 29196288, "ready_ms": 1614.5867360000002, "settled_ms": 1640.2443799999999, "wal_bytes_ready": 30867072 }, { "db_bytes_ready": 29233152, "ready_ms": 1599.573253, "settled_ms": 1623.882941, "wal_bytes_ready": 30846472 }, { "db_bytes_ready": 29233152, "ready_ms": 1554.284409, "settled_ms": 1600.822907, "wal_bytes_ready": 30974192 }, { "db_bytes_ready": 29224960, "ready_ms": 1541.121994, "settled_ms": 1565.7114760000002, "wal_bytes_ready": 30689912 }, { "db_bytes_ready": 29253632, "ready_ms": 1546.931941, "settled_ms": 1572.764804, "wal_bytes_ready": 30858832 }, { "db_bytes_ready": 29253632, "ready_ms": 1606.9044460000002, "settled_ms": 1654.823881, "wal_bytes_ready": 31056592 }, { "db_bytes_ready": 29233152, "ready_ms": 1538.403169, "settled_ms": 1563.132283, "wal_bytes_ready": 31167832 } ], "tasks": 1686.462141, "tasks_ready_ms": 1659.0995130000001, "tasks_runs": [ 1217.466154, 2754.213641, 1650.4115559999998, 1661.610672, 1660.731009, 1753.2202240000001, 1728.61041, 1701.505048, 1687.5854630000001, 1686.462141, 1669.3759539999999, 1695.66437, 1707.6213010000001, 1679.032588, 1651.693419 ], "tasks_samples": [ { "db_bytes_ready": 32030720, "ready_ms": 1190.782038, "settled_ms": 1217.466154, "wal_bytes_ready": 34352592 }, { "db_bytes_ready": 32055296, "ready_ms": 2729.204092, "settled_ms": 2754.213641, "wal_bytes_ready": 33998272 }, { "db_bytes_ready": 32047104, "ready_ms": 1626.526503, "settled_ms": 1650.4115559999998, "wal_bytes_ready": 34472072 }, { "db_bytes_ready": 32063488, "ready_ms": 1636.798943, "settled_ms": 1661.610672, "wal_bytes_ready": 34352592 }, { "db_bytes_ready": 32075776, "ready_ms": 1614.238909, "settled_ms": 1660.731009, "wal_bytes_ready": 34031232 }, { "db_bytes_ready": 32014336, "ready_ms": 1706.874568, "settled_ms": 1753.2202240000001, "wal_bytes_ready": 34039472 }, { "db_bytes_ready": 32022528, "ready_ms": 1678.464424, "settled_ms": 1728.61041, "wal_bytes_ready": 34402032 }, { "db_bytes_ready": 32022528, "ready_ms": 1665.6613089999998, "settled_ms": 1701.505048, "wal_bytes_ready": 34142472 }, { "db_bytes_ready": 32038912, "ready_ms": 1662.598506, "settled_ms": 1687.5854630000001, "wal_bytes_ready": 34055952 }, { "db_bytes_ready": 31985664, "ready_ms": 1659.0995130000001, "settled_ms": 1686.462141, "wal_bytes_ready": 34270192 }, { "db_bytes_ready": 32043008, "ready_ms": 1645.073971, "settled_ms": 1669.3759539999999, "wal_bytes_ready": 34002392 }, { "db_bytes_ready": 32063488, "ready_ms": 1668.600713, "settled_ms": 1695.66437, "wal_bytes_ready": 33973552 }, { "db_bytes_ready": 32043008, "ready_ms": 1682.602033, "settled_ms": 1707.6213010000001, "wal_bytes_ready": 34043592 }, { "db_bytes_ready": 32038912, "ready_ms": 1636.789037, "settled_ms": 1679.032588, "wal_bytes_ready": 34055952 }, { "db_bytes_ready": 32043008, "ready_ms": 1625.5861029999999, "settled_ms": 1651.693419, "wal_bytes_ready": 33825232 } ] }, "describe_ms": { "pass": { "max": 0.417001, "n": 20000, "p50": 0.002905, "p95": 0.014036999999999999, "p99": 0.034725 }, "pass_and_rows": { "max": 0.534451, "n": 20000, "p50": 0.012153, "p95": 0.032591, "p99": 0.053891 } }, "list_ms": { "anytime": { "matching": 868, "max": 2.635307, "n": 200, "p50": 1.940977, "p95": 2.301772, "p99": 2.555899 }, "anytime_by_child_tag": { "matching": 886, "max": 3.3124759999999998, "n": 200, "p50": 2.456163, "p95": 2.676665, "p99": 3.013487 }, "counts": { "max": 0.428172, "n": 200, "p50": 0.239249, "p95": 0.272319, "p99": 0.31327699999999997 }, "someday": { "matching": 822, "max": 3.3340069999999997, "n": 200, "p50": 1.91637, "p95": 2.233444, "p99": 2.653931 }, "tag": { "matching": 809, "max": 3.605606, "n": 200, "p50": 2.601194, "p95": 2.967632, "p99": 3.378269 }, "today": { "matching": 1044, "max": 3.395272, "n": 200, "p50": 2.328443, "p95": 2.983279, "p99": 3.1931220000000002 }, "today_by_priority": { "matching": 1044, "max": 2.663109, "n": 200, "p50": 2.267238, "p95": 2.4372759999999998, "p99": 2.5358910000000003 }, "untracked": { "max": 1.020532, "n": 200, "p50": 0.698387, "p95": 0.852939, "p99": 0.9471660000000001 }, "upcoming": { "matching": 1513, "max": 3.55449, "n": 200, "p50": 2.398574, "p95": 2.804716, "p99": 3.038494 } }, "notes": 10000, "tasks": 10000, "write_ms": { "first_touch": { "max": 30.650609999999997, "n": 60, "p50": 5.280344, "p95": 5.834080999999999, "p99": 19.649948000000002 }, "warm": { "max": 35.222997, "n": 2340, "p50": 2.8079810000000003, "p95": 6.221618, "p99": 14.663984999999998 } } } ``` Gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ```
Author
Owner

Fresh full server report 3/3 at 100000 notes on perf-test-01, head d23e80b949. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 692.0 seconds. Fixture Homes and state for this report have been deleted. No budgets changed.

Report verbatim:

Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational)

100000 notes (10000 daily, 422 MB, 50 long notes)

metric unit p50 p95 max noise runs × samples budget
cold.disk_written MB 541 541 541 0% 3 × 1
cold.first_page ms 43.4 48.4 48.4 17% 3 × 1
cold.index s 13.6 16.5 16.5 22% 3 × 1 p95 ≤ 60 ok
cold.mem_peak MB 250 265 265 7% 3 × 1
cold.notes_per_s notes/s 7337 7398 7398 18% 3 × 1 p50 ≥ 2000 ok
cold.startup ms 84.4 95.9 95.9 16% 3 × 1 p95 ≤ 500 ok
home.first_page ms 22.0 28.4 28.4 33% 5 × 1 p95 ≤ 100 ok
home.page ms 1.09 1.36 1.75 37% 5 × 20 p95 ≤ 50 ok
home.page_big ms 144 198 223 29% 5 × 5
home.page_next ms 0.80 1.68 6.74 47% 5 × 20 p95 ≤ 50 ok
home.page_tag ms 4.68 5.98 97.5 7% 5 × 20 p95 ≤ 50 ok
home.page_title ms 0.86 1.74 7.67 54% 5 × 20 p95 ≤ 50 ok
idle.cpu_pct % 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.1 ok
idle.cpu_ticks ticks 0.00 0.00 0.00 0% 1 × 1
idle.rss MB 96.0 96.0 96.0 0% 1 × 1 p95 ≤ 100 ok
idle.threads count 15.0 15.0 15.0 0% 1 × 1
idle.wakeups_per_s /s 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.2 ok
journal.catch_up ms 422 548 548 39% 5 × 1 p95 ≤ 2000 ok
journal.entries count 100371 100733 100733 1% 5 × 1
journal.page ms 3.87 5.20 9.29 41% 5 × 101
load.typing_cpu_pct % 0.48 0.48 0.48 0% 1 × 1 p95 ≤ 2 ok
load.typing_wakeups_per_s /s 62.2 62.2 62.2 0% 1 × 1
mem.after_first_page MB 21.9 23.3 23.3 10% 5 × 1
mem.after_opens MB 92.5 121 121 49% 5 × 1 p95 ≤ 300 ok
mem.after_search MB 120 130 130 18% 5 × 1
mem.idle MB 16.7 16.9 16.9 2% 5 × 1 p95 ≤ 64 ok
mem.peak MB 134 142 142 11% 5 × 1 p95 ≤ 256 ok
open.api_get ms 7.19 20.4 53.7 44% 5 × 24 p95 ≤ 50 ok
open.long_note ms 25.9 41.8 41.8 65% 5 × 1 p95 ≤ 250 ok
open.note ms 3.74 18.8 33.4 107% 5 × 24 p95 ≤ 15 over
search.catch_up s 2.02 2.03 46.1 101% 5 × 3
search.first_query ms 52.1 57.1 57.1 58% 5 × 1 p95 ≤ 1000 ok
search.query ms 2.90 18.8 275 56% 5 × 55 p95 ≤ 100 ok
shutdown ms 108 115 115 7% 5 × 1 p95 ≤ 1000 ok
startup.healthz ms 97.2 109 109 21% 5 × 1 p95 ≤ 300 ok
storm.converge ms 173 177 177 5% 5 × 1 p95 ≤ 2000 ok
storm.disk_written MB 46.1 46.5 46.5 12% 5 × 1 p95 ≤ 50 ok
storm.dropped_clients count 0.00 0.00 0.00 0% 5 × 1 p95 ≤ 0 ok
storm.edits_per_s edits/s 5348 5776 5776 30% 5 × 1 p50 ≥ 1000 ok
storm.outside_edits count 4.00 5.00 5.00 25% 5 × 1
storm.save_ack ms 4.72 9.68 46.9 23% 5 × 10000 p95 ≤ 150 ok
storm.typing s 1.87 2.38 2.38 35% 5 × 1
sync.durable_write ms 12.0 19.4 152 10% 5 × 30
sync.round_trip ms 0.31 0.38 3.19 28% 5 × 200 p95 ≤ 10 ok
sync.save_ack ms 2.57 5.00 30.7 7% 5 × 200 p95 ≤ 40 ok
trash.delete ms 49.8 89.7 145 28% 5 × 30
trash.forget ms 6.24 9.33 23.2 16% 5 × 30
trash.restore ms 125 163 207 11% 5 × 30
uploads.response ms 99.9 139 217 36% 5 × 20
uploads.round_trip ms 1.23 1.61 8.42 22% 5 × 200
uploads.save_ack ms 3.75 5.86 19.7 22% 5 × 200

Gate output verbatim:

over budget: 100000 notes: open.note p95 18.8 > 15
process exit=1

Binary and budget SHA-256:

{
  "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2",
  "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e",
  "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9",
  "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d"
}
Fresh full server report 3/3 at 100000 notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 692.0 seconds. Fixture Homes and state for this report have been deleted. No budgets changed. Report verbatim: Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational) ### 100000 notes (10000 daily, 422 MB, 50 long notes) | metric | unit | p50 | p95 | max | noise | runs × samples | budget | | |---|---|---:|---:|---:|---:|---:|---|---| | cold.disk_written | MB | 541 | 541 | 541 | 0% | 3 × 1 | | | | cold.first_page | ms | 43.4 | 48.4 | 48.4 | 17% | 3 × 1 | | | | cold.index | s | 13.6 | 16.5 | 16.5 | 22% | 3 × 1 | p95 ≤ 60 | ok | | cold.mem_peak | MB | 250 | 265 | 265 | 7% | 3 × 1 | | | | cold.notes_per_s | notes/s | 7337 | 7398 | 7398 | 18% | 3 × 1 | p50 ≥ 2000 | ok | | cold.startup | ms | 84.4 | 95.9 | 95.9 | 16% | 3 × 1 | p95 ≤ 500 | ok | | home.first_page | ms | 22.0 | 28.4 | 28.4 | 33% | 5 × 1 | p95 ≤ 100 | ok | | home.page | ms | 1.09 | 1.36 | 1.75 | 37% | 5 × 20 | p95 ≤ 50 | ok | | home.page_big | ms | 144 | 198 | 223 | 29% | 5 × 5 | | | | home.page_next | ms | 0.80 | 1.68 | 6.74 | 47% | 5 × 20 | p95 ≤ 50 | ok | | home.page_tag | ms | 4.68 | 5.98 | 97.5 | 7% | 5 × 20 | p95 ≤ 50 | ok | | home.page_title | ms | 0.86 | 1.74 | 7.67 | 54% | 5 × 20 | p95 ≤ 50 | ok | | idle.cpu_pct | % | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.1 | ok | | idle.cpu_ticks | ticks | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | | | | idle.rss | MB | 96.0 | 96.0 | 96.0 | 0% | 1 × 1 | p95 ≤ 100 | ok | | idle.threads | count | 15.0 | 15.0 | 15.0 | 0% | 1 × 1 | | | | idle.wakeups_per_s | /s | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.2 | ok | | journal.catch_up | ms | 422 | 548 | 548 | 39% | 5 × 1 | p95 ≤ 2000 | ok | | journal.entries | count | 100371 | 100733 | 100733 | 1% | 5 × 1 | | | | journal.page | ms | 3.87 | 5.20 | 9.29 | 41% | 5 × 101 | | | | load.typing_cpu_pct | % | 0.48 | 0.48 | 0.48 | 0% | 1 × 1 | p95 ≤ 2 | ok | | load.typing_wakeups_per_s | /s | 62.2 | 62.2 | 62.2 | 0% | 1 × 1 | | | | mem.after_first_page | MB | 21.9 | 23.3 | 23.3 | 10% | 5 × 1 | | | | mem.after_opens | MB | 92.5 | 121 | 121 | 49% | 5 × 1 | p95 ≤ 300 | ok | | mem.after_search | MB | 120 | 130 | 130 | 18% | 5 × 1 | | | | mem.idle | MB | 16.7 | 16.9 | 16.9 | 2% | 5 × 1 | p95 ≤ 64 | ok | | mem.peak | MB | 134 | 142 | 142 | 11% | 5 × 1 | p95 ≤ 256 | ok | | open.api_get | ms | 7.19 | 20.4 | 53.7 | 44% | 5 × 24 | p95 ≤ 50 | ok | | open.long_note | ms | 25.9 | 41.8 | 41.8 | 65% | 5 × 1 | p95 ≤ 250 | ok | | open.note | ms | 3.74 | 18.8 | 33.4 | 107% | 5 × 24 | p95 ≤ 15 | **over** | | search.catch_up | s | 2.02 | 2.03 | 46.1 | 101% | 5 × 3 | | | | search.first_query | ms | 52.1 | 57.1 | 57.1 | 58% | 5 × 1 | p95 ≤ 1000 | ok | | search.query | ms | 2.90 | 18.8 | 275 | 56% | 5 × 55 | p95 ≤ 100 | ok | | shutdown | ms | 108 | 115 | 115 | 7% | 5 × 1 | p95 ≤ 1000 | ok | | startup.healthz | ms | 97.2 | 109 | 109 | 21% | 5 × 1 | p95 ≤ 300 | ok | | storm.converge | ms | 173 | 177 | 177 | 5% | 5 × 1 | p95 ≤ 2000 | ok | | storm.disk_written | MB | 46.1 | 46.5 | 46.5 | 12% | 5 × 1 | p95 ≤ 50 | ok | | storm.dropped_clients | count | 0.00 | 0.00 | 0.00 | 0% | 5 × 1 | p95 ≤ 0 | ok | | storm.edits_per_s | edits/s | 5348 | 5776 | 5776 | 30% | 5 × 1 | p50 ≥ 1000 | ok | | storm.outside_edits | count | 4.00 | 5.00 | 5.00 | 25% | 5 × 1 | | | | storm.save_ack | ms | 4.72 | 9.68 | 46.9 | 23% | 5 × 10000 | p95 ≤ 150 | ok | | storm.typing | s | 1.87 | 2.38 | 2.38 | 35% | 5 × 1 | | | | sync.durable_write | ms | 12.0 | 19.4 | 152 | 10% | 5 × 30 | | | | sync.round_trip | ms | 0.31 | 0.38 | 3.19 | 28% | 5 × 200 | p95 ≤ 10 | ok | | sync.save_ack | ms | 2.57 | 5.00 | 30.7 | 7% | 5 × 200 | p95 ≤ 40 | ok | | trash.delete | ms | 49.8 | 89.7 | 145 | 28% | 5 × 30 | | | | trash.forget | ms | 6.24 | 9.33 | 23.2 | 16% | 5 × 30 | | | | trash.restore | ms | 125 | 163 | 207 | 11% | 5 × 30 | | | | uploads.response | ms | 99.9 | 139 | 217 | 36% | 5 × 20 | | | | uploads.round_trip | ms | 1.23 | 1.61 | 8.42 | 22% | 5 × 200 | | | | uploads.save_ack | ms | 3.75 | 5.86 | 19.7 | 22% | 5 × 200 | | | Gate output verbatim: ```text over budget: 100000 notes: open.note p95 18.8 > 15 process exit=1 ``` Binary and budget SHA-256: ```json { "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2", "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e", "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9", "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d" } ```
Author
Owner

Tasks report 3/3 at 100000 base notes plus 100000 task notes on perf-test-01, head d23e80b949. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 784.5 seconds. Fixture Homes and state deleted.

Output verbatim:

making a Home of 100000 notes
adding 100000 task notes
cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f
cold plain run 0: {"ready_ms":26854.118066000003,"settled_ms":26923.245736999997,"wal_bytes_ready":358889112,"db_bytes_ready":319877120}
cold tasks run 0: {"ready_ms":24526.617078,"settled_ms":24599.414657,"wal_bytes_ready":390864432,"db_bytes_ready":349208576}
cold tasks run 1: {"ready_ms":24644.582034,"settled_ms":24713.922024,"wal_bytes_ready":390580152,"db_bytes_ready":349052928}
cold plain run 1: {"ready_ms":23752.508245,"settled_ms":23818.040039,"wal_bytes_ready":361150992,"db_bytes_ready":320102400}
cold plain run 2: {"ready_ms":23546.49817,"settled_ms":23602.733603,"wal_bytes_ready":359696632,"db_bytes_ready":319688704}
cold tasks run 2: {"ready_ms":25032.025244,"settled_ms":25104.274897,"wal_bytes_ready":389830312,"db_bytes_ready":349003776}
cold tasks run 3: {"ready_ms":24909.257731,"settled_ms":24981.864123,"wal_bytes_ready":391169312,"db_bytes_ready":348995584}
cold plain run 3: {"ready_ms":23098.051267,"settled_ms":23183.890457,"wal_bytes_ready":363400512,"db_bytes_ready":319868928}
cold plain run 4: {"ready_ms":22632.931797,"settled_ms":22694.71609,"wal_bytes_ready":360475312,"db_bytes_ready":319811584}
cold tasks run 4: {"ready_ms":24262.897990999998,"settled_ms":24347.382890999997,"wal_bytes_ready":391667832,"db_bytes_ready":349110272}
cold tasks run 5: {"ready_ms":24224.487492,"settled_ms":24290.453029999997,"wal_bytes_ready":390093992,"db_bytes_ready":349167616}
cold plain run 5: {"ready_ms":23040.958812,"settled_ms":23104.614193,"wal_bytes_ready":361459992,"db_bytes_ready":319930368}
cold plain run 6: {"ready_ms":22798.144302,"settled_ms":22853.38065,"wal_bytes_ready":358225792,"db_bytes_ready":319787008}
cold tasks run 6: {"ready_ms":24156.534812,"settled_ms":24222.427773,"wal_bytes_ready":391844992,"db_bytes_ready":349102080}
cold tasks run 7: {"ready_ms":24219.665435,"settled_ms":24273.565833,"wal_bytes_ready":392199312,"db_bytes_ready":348938240}
cold plain run 7: {"ready_ms":22927.480084,"settled_ms":22991.661481000003,"wal_bytes_ready":359968552,"db_bytes_ready":319942656}
cold plain run 8: {"ready_ms":22944.211669,"settled_ms":23010.855531,"wal_bytes_ready":359053912,"db_bytes_ready":319811584}
cold tasks run 8: {"ready_ms":23772.065712,"settled_ms":23857.009006999997,"wal_bytes_ready":390782032,"db_bytes_ready":349093888}
cold tasks run 9: {"ready_ms":24251.218829999998,"settled_ms":24320.835969,"wal_bytes_ready":391861472,"db_bytes_ready":348975104}
cold plain run 9: {"ready_ms":22802.384908,"settled_ms":22860.082534,"wal_bytes_ready":358720192,"db_bytes_ready":320172032}
cold plain run 10: {"ready_ms":23121.95965,"settled_ms":23183.721209000003,"wal_bytes_ready":360310512,"db_bytes_ready":319926272}
cold tasks run 10: {"ready_ms":23826.386449,"settled_ms":23897.678285,"wal_bytes_ready":392092192,"db_bytes_ready":349212672}
cold tasks run 11: {"ready_ms":23647.759478,"settled_ms":23706.691555999998,"wal_bytes_ready":391041592,"db_bytes_ready":349171712}
cold plain run 11: {"ready_ms":22934.914473,"settled_ms":23006.123902,"wal_bytes_ready":360874952,"db_bytes_ready":319971328}
cold plain run 12: {"ready_ms":22773.438409000002,"settled_ms":22821.183845,"wal_bytes_ready":359610112,"db_bytes_ready":319799296}
cold tasks run 12: {"ready_ms":24166.260990000002,"settled_ms":24277.820889000002,"wal_bytes_ready":390604872,"db_bytes_ready":349007872}
cold tasks run 13: {"ready_ms":24067.013601,"settled_ms":24142.887327,"wal_bytes_ready":391222872,"db_bytes_ready":348909568}
cold plain run 13: {"ready_ms":22622.34379,"settled_ms":22672.072947,"wal_bytes_ready":359367032,"db_bytes_ready":319983616}
cold plain run 14: {"ready_ms":23062.71636,"settled_ms":23128.703277,"wal_bytes_ready":359329952,"db_bytes_ready":319827968}
cold tasks run 14: {"ready_ms":23752.694030000002,"settled_ms":23816.129611,"wal_bytes_ready":390905632,"db_bytes_ready":349057024}
counts: {"anytime":8543,"incomplete":false,"someday":7957,"tags":{"cooking":1018,"errands":8092,"errands/a":47,"errands/about":50,"errands/after":63,"errands/again":48,"errands/already":71,"errands/always":67,"errands/and":43,"errands/answer":63,"errands/appointment":56,"errands/as":54,"errands/at":53,"errands/backup":55,"errands/before":62,"errands/book":68,"errands/bread":65,"errands/bright":45,"errands/brother":51,"errands/budget":59,"errands/bug":62,"errands/busy":50,"errands/but":58,"errands/buy":57,"errands/café":62,"errands/call":51,"errands/calm":50,"errands/carefully":43,"errands/chai":58,"errands/change":48,"errands/chapter":63,"errands/coffee":75,"errands/cold":69,"errands/colour":47,"errands/dal":64,"errands/dark":46,"errands/design":69,"errands/doctor":56,"errands/draft":45,"errands/early":51,"errands/easy":51,"errands/editor":58,"errands/evening":55,"errands/family":48,"errands/finish":60,"errands/fix":50,"errands/flight":55,"errands/for":58,"errands/forget":60,"errands/friends":44,"errands/from":52,"errands/garden":53,"errands/good":55,"errands/guitar":64,"errands/happy":51,"errands/hard":66,"errands/honestly":60,"errands/hotel":57,"errands/idea":54,"errands/in":57,"errands/into":59,"errands/invoice":64,"errands/is":54,"errands/it":63,"errands/keep":60,"errands/keyboard":53,"errands/kitchen":59,"errands/language":64,"errands/laptop":63,"errands/large":55,"errands/late":67,"errands/lesson":54,"errands/list":62,"errands/loud":56,"errands/lovely":54,"errands/market":52,"errands/maybe":65,"errands/meeting":62,"errands/monsoon":68,"errands/more":52,"errands/morning":56,"errands/move":57,"errands/music":63,"errands/naïve":60,"errands/never":61,"errands/new":47,"errands/notes":55,"errands/of":56,"errands/often":62,"errands/old":61,"errands/on":49,"errands/paper":59,"errands/parents":64,"errands/pencil":72,"errands/phone":65,"errands/plan":62,"errands/practice":52,"errands/probably":55,"errands/project":72,"errands/question":49,"errands/quickly":68,"errands/quiet":57,"errands/rain":60,"errands/read":62,"errands/really":46,"errands/recipe":62,"errands/release":60,"errands/remember":62,"errands/review":52,"errands/rice":64,"errands/run":68,"errands/résumé":54,"errands/screen":70,"errands/sell":48,"errands/sentence":66,"errands/server":56,"errands/sister":63,"errands/sketch":65,"errands/sleep":72,"errands/slowly":44,"errands/small":59,"errands/some":39,"errands/sometimes":57,"errands/song":65,"errands/start":57,"errands/station":40,"errands/still":71,"errands/strange":65,"errands/tea":59,"errands/that":56,"errands/the":51,"errands/they":70,"errands/think":59,"errands/this":55,"errands/tired":47,"errands/to":71,"errands/today":52,"errands/tomorrow":62,"errands/train":56,"errands/travel":48,"errands/try":61,"errands/vegetables":63,"errands/visa":53,"errands/walk":62,"errands/warm":57,"errands/was":57,"errands/we":54,"errands/weather":58,"errands/when":62,"errands/with":44,"errands/word":56,"errands/write":68,"errands/नमस्ते":71,"errands/ദിവസം":60,"errands/☕":51,"errands/日記":64,"errands/🌧️":56,"errands/👍":56,"family":1051,"film":1039,"garden":1054,"health":1048,"home":1043,"ideas":1014,"journal":1068,"learning":981,"money":1015,"music":1072,"people":1070,"project":2139,"project/calternal":1022,"project/house":1149,"reading":987,"run":1030,"todo":1033,"travel":1011,"work":1059,"writing":1067},"today":10766,"untracked":338090,"upcoming":15222}
tasks-bench: 100000 notes + 100000 tasks
cold.index plain 23011 ms, with tasks 24278 ms (+5.5 %)
tasks.describe p50 0.0028 p95 0.0170 ms (with rows: p50 0.0122 p95 0.0305)
               anytime: p50 5.90 p95 6.34 p99 6.55 max 7.21 ms (n=200, 8543 matching)
  anytime_by_child_tag: p50 14.78 p95 16.80 p99 17.89 max 22.05 ms (n=200, 8759 matching)
                counts: p50 1.63 p95 1.80 p99 2.04 max 3.51 ms (n=200, null matching)
               someday: p50 5.65 p95 6.44 p99 6.91 max 7.41 ms (n=200, 7957 matching)
                   tag: p50 14.28 p95 14.94 p99 15.66 max 15.96 ms (n=200, 8092 matching)
                 today: p50 8.91 p95 9.34 p99 10.47 max 15.02 ms (n=200, 10766 matching)
     today_by_priority: p50 7.84 p95 8.10 p99 8.28 max 9.40 ms (n=200, 10766 matching)
             untracked: p50 0.76 p95 0.95 p99 1.00 max 1.09 ms (n=200, null matching)
              upcoming: p50 9.71 p95 10.93 p99 11.66 max 12.36 ms (n=200, 15222 matching)
tasks.update first_touch: p50 5.32 p95 7.61 p99 28.18 max 46.71 ms (n=60)
tasks.update        warm: p50 2.80 p95 5.27 p99 16.80 max 35.65 ms (n=2340)
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS

All measurements and raw cold samples:

{
  "cold_index_ms": {
    "cache_mode": "dropped",
    "endpoint": "shutdown, empty WAL, sync -f complete",
    "growth_pct": 5.505946340383381,
    "plain": 23010.855531,
    "plain_ready_ms": 22944.211669,
    "plain_runs": [
      26923.245736999997,
      23818.040039,
      23602.733603,
      23183.890457,
      22694.71609,
      23104.614193,
      22853.38065,
      22991.661481000003,
      23010.855531,
      22860.082534,
      23183.721209000003,
      23006.123902,
      22821.183845,
      22672.072947,
      23128.703277
    ],
    "plain_samples": [
      {
        "db_bytes_ready": 319877120,
        "ready_ms": 26854.118066000003,
        "settled_ms": 26923.245736999997,
        "wal_bytes_ready": 358889112
      },
      {
        "db_bytes_ready": 320102400,
        "ready_ms": 23752.508245,
        "settled_ms": 23818.040039,
        "wal_bytes_ready": 361150992
      },
      {
        "db_bytes_ready": 319688704,
        "ready_ms": 23546.49817,
        "settled_ms": 23602.733603,
        "wal_bytes_ready": 359696632
      },
      {
        "db_bytes_ready": 319868928,
        "ready_ms": 23098.051267,
        "settled_ms": 23183.890457,
        "wal_bytes_ready": 363400512
      },
      {
        "db_bytes_ready": 319811584,
        "ready_ms": 22632.931797,
        "settled_ms": 22694.71609,
        "wal_bytes_ready": 360475312
      },
      {
        "db_bytes_ready": 319930368,
        "ready_ms": 23040.958812,
        "settled_ms": 23104.614193,
        "wal_bytes_ready": 361459992
      },
      {
        "db_bytes_ready": 319787008,
        "ready_ms": 22798.144302,
        "settled_ms": 22853.38065,
        "wal_bytes_ready": 358225792
      },
      {
        "db_bytes_ready": 319942656,
        "ready_ms": 22927.480084,
        "settled_ms": 22991.661481000003,
        "wal_bytes_ready": 359968552
      },
      {
        "db_bytes_ready": 319811584,
        "ready_ms": 22944.211669,
        "settled_ms": 23010.855531,
        "wal_bytes_ready": 359053912
      },
      {
        "db_bytes_ready": 320172032,
        "ready_ms": 22802.384908,
        "settled_ms": 22860.082534,
        "wal_bytes_ready": 358720192
      },
      {
        "db_bytes_ready": 319926272,
        "ready_ms": 23121.95965,
        "settled_ms": 23183.721209000003,
        "wal_bytes_ready": 360310512
      },
      {
        "db_bytes_ready": 319971328,
        "ready_ms": 22934.914473,
        "settled_ms": 23006.123902,
        "wal_bytes_ready": 360874952
      },
      {
        "db_bytes_ready": 319799296,
        "ready_ms": 22773.438409000002,
        "settled_ms": 22821.183845,
        "wal_bytes_ready": 359610112
      },
      {
        "db_bytes_ready": 319983616,
        "ready_ms": 22622.34379,
        "settled_ms": 22672.072947,
        "wal_bytes_ready": 359367032
      },
      {
        "db_bytes_ready": 319827968,
        "ready_ms": 23062.71636,
        "settled_ms": 23128.703277,
        "wal_bytes_ready": 359329952
      }
    ],
    "tasks": 24277.820889000002,
    "tasks_ready_ms": 24219.665435,
    "tasks_runs": [
      24599.414657,
      24713.922024,
      25104.274897,
      24981.864123,
      24347.382890999997,
      24290.453029999997,
      24222.427773,
      24273.565833,
      23857.009006999997,
      24320.835969,
      23897.678285,
      23706.691555999998,
      24277.820889000002,
      24142.887327,
      23816.129611
    ],
    "tasks_samples": [
      {
        "db_bytes_ready": 349208576,
        "ready_ms": 24526.617078,
        "settled_ms": 24599.414657,
        "wal_bytes_ready": 390864432
      },
      {
        "db_bytes_ready": 349052928,
        "ready_ms": 24644.582034,
        "settled_ms": 24713.922024,
        "wal_bytes_ready": 390580152
      },
      {
        "db_bytes_ready": 349003776,
        "ready_ms": 25032.025244,
        "settled_ms": 25104.274897,
        "wal_bytes_ready": 389830312
      },
      {
        "db_bytes_ready": 348995584,
        "ready_ms": 24909.257731,
        "settled_ms": 24981.864123,
        "wal_bytes_ready": 391169312
      },
      {
        "db_bytes_ready": 349110272,
        "ready_ms": 24262.897990999998,
        "settled_ms": 24347.382890999997,
        "wal_bytes_ready": 391667832
      },
      {
        "db_bytes_ready": 349167616,
        "ready_ms": 24224.487492,
        "settled_ms": 24290.453029999997,
        "wal_bytes_ready": 390093992
      },
      {
        "db_bytes_ready": 349102080,
        "ready_ms": 24156.534812,
        "settled_ms": 24222.427773,
        "wal_bytes_ready": 391844992
      },
      {
        "db_bytes_ready": 348938240,
        "ready_ms": 24219.665435,
        "settled_ms": 24273.565833,
        "wal_bytes_ready": 392199312
      },
      {
        "db_bytes_ready": 349093888,
        "ready_ms": 23772.065712,
        "settled_ms": 23857.009006999997,
        "wal_bytes_ready": 390782032
      },
      {
        "db_bytes_ready": 348975104,
        "ready_ms": 24251.218829999998,
        "settled_ms": 24320.835969,
        "wal_bytes_ready": 391861472
      },
      {
        "db_bytes_ready": 349212672,
        "ready_ms": 23826.386449,
        "settled_ms": 23897.678285,
        "wal_bytes_ready": 392092192
      },
      {
        "db_bytes_ready": 349171712,
        "ready_ms": 23647.759478,
        "settled_ms": 23706.691555999998,
        "wal_bytes_ready": 391041592
      },
      {
        "db_bytes_ready": 349007872,
        "ready_ms": 24166.260990000002,
        "settled_ms": 24277.820889000002,
        "wal_bytes_ready": 390604872
      },
      {
        "db_bytes_ready": 348909568,
        "ready_ms": 24067.013601,
        "settled_ms": 24142.887327,
        "wal_bytes_ready": 391222872
      },
      {
        "db_bytes_ready": 349057024,
        "ready_ms": 23752.694030000002,
        "settled_ms": 23816.129611,
        "wal_bytes_ready": 390905632
      }
    ]
  },
  "describe_ms": {
    "pass": {
      "max": 0.413253,
      "n": 20000,
      "p50": 0.002845,
      "p95": 0.016961,
      "p99": 0.040986999999999996
    },
    "pass_and_rows": {
      "max": 0.996307,
      "n": 20000,
      "p50": 0.012193,
      "p95": 0.030457,
      "p99": 0.057879
    }
  },
  "list_ms": {
    "anytime": {
      "matching": 8543,
      "max": 7.212708,
      "n": 200,
      "p50": 5.902475,
      "p95": 6.339684,
      "p99": 6.551699999999999
    },
    "anytime_by_child_tag": {
      "matching": 8759,
      "max": 22.050497,
      "n": 200,
      "p50": 14.777335,
      "p95": 16.795405,
      "p99": 17.891308000000002
    },
    "counts": {
      "max": 3.510454,
      "n": 200,
      "p50": 1.6255650000000001,
      "p95": 1.796665,
      "p99": 2.0398199999999997
    },
    "someday": {
      "matching": 7957,
      "max": 7.409305,
      "n": 200,
      "p50": 5.653839,
      "p95": 6.444189000000001,
      "p99": 6.90915
    },
    "tag": {
      "matching": 8092,
      "max": 15.961123,
      "n": 200,
      "p50": 14.278411,
      "p95": 14.935431000000001,
      "p99": 15.657464
    },
    "today": {
      "matching": 10766,
      "max": 15.024599,
      "n": 200,
      "p50": 8.906320000000001,
      "p95": 9.340002,
      "p99": 10.467203
    },
    "today_by_priority": {
      "matching": 10766,
      "max": 9.396287999999998,
      "n": 200,
      "p50": 7.836937000000001,
      "p95": 8.097705,
      "p99": 8.277181
    },
    "untracked": {
      "max": 1.091334,
      "n": 200,
      "p50": 0.757789,
      "p95": 0.9505790000000001,
      "p99": 1.002268
    },
    "upcoming": {
      "matching": 15222,
      "max": 12.360629,
      "n": 200,
      "p50": 9.71241,
      "p95": 10.931743,
      "p99": 11.656571
    }
  },
  "notes": 100000,
  "tasks": 100000,
  "write_ms": {
    "first_touch": {
      "max": 46.70976,
      "n": 60,
      "p50": 5.316116,
      "p95": 7.607539,
      "p99": 28.175648000000002
    },
    "warm": {
      "max": 35.648503999999996,
      "n": 2340,
      "p50": 2.8024389999999997,
      "p95": 5.2710609999999996,
      "p99": 16.79766
    }
  }
}

Gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
Tasks report 3/3 at 100000 base notes plus 100000 task notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 784.5 seconds. Fixture Homes and state deleted. Output verbatim: ```text making a Home of 100000 notes adding 100000 task notes cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f cold plain run 0: {"ready_ms":26854.118066000003,"settled_ms":26923.245736999997,"wal_bytes_ready":358889112,"db_bytes_ready":319877120} cold tasks run 0: {"ready_ms":24526.617078,"settled_ms":24599.414657,"wal_bytes_ready":390864432,"db_bytes_ready":349208576} cold tasks run 1: {"ready_ms":24644.582034,"settled_ms":24713.922024,"wal_bytes_ready":390580152,"db_bytes_ready":349052928} cold plain run 1: {"ready_ms":23752.508245,"settled_ms":23818.040039,"wal_bytes_ready":361150992,"db_bytes_ready":320102400} cold plain run 2: {"ready_ms":23546.49817,"settled_ms":23602.733603,"wal_bytes_ready":359696632,"db_bytes_ready":319688704} cold tasks run 2: {"ready_ms":25032.025244,"settled_ms":25104.274897,"wal_bytes_ready":389830312,"db_bytes_ready":349003776} cold tasks run 3: {"ready_ms":24909.257731,"settled_ms":24981.864123,"wal_bytes_ready":391169312,"db_bytes_ready":348995584} cold plain run 3: {"ready_ms":23098.051267,"settled_ms":23183.890457,"wal_bytes_ready":363400512,"db_bytes_ready":319868928} cold plain run 4: {"ready_ms":22632.931797,"settled_ms":22694.71609,"wal_bytes_ready":360475312,"db_bytes_ready":319811584} cold tasks run 4: {"ready_ms":24262.897990999998,"settled_ms":24347.382890999997,"wal_bytes_ready":391667832,"db_bytes_ready":349110272} cold tasks run 5: {"ready_ms":24224.487492,"settled_ms":24290.453029999997,"wal_bytes_ready":390093992,"db_bytes_ready":349167616} cold plain run 5: {"ready_ms":23040.958812,"settled_ms":23104.614193,"wal_bytes_ready":361459992,"db_bytes_ready":319930368} cold plain run 6: {"ready_ms":22798.144302,"settled_ms":22853.38065,"wal_bytes_ready":358225792,"db_bytes_ready":319787008} cold tasks run 6: {"ready_ms":24156.534812,"settled_ms":24222.427773,"wal_bytes_ready":391844992,"db_bytes_ready":349102080} cold tasks run 7: {"ready_ms":24219.665435,"settled_ms":24273.565833,"wal_bytes_ready":392199312,"db_bytes_ready":348938240} cold plain run 7: {"ready_ms":22927.480084,"settled_ms":22991.661481000003,"wal_bytes_ready":359968552,"db_bytes_ready":319942656} cold plain run 8: {"ready_ms":22944.211669,"settled_ms":23010.855531,"wal_bytes_ready":359053912,"db_bytes_ready":319811584} cold tasks run 8: {"ready_ms":23772.065712,"settled_ms":23857.009006999997,"wal_bytes_ready":390782032,"db_bytes_ready":349093888} cold tasks run 9: {"ready_ms":24251.218829999998,"settled_ms":24320.835969,"wal_bytes_ready":391861472,"db_bytes_ready":348975104} cold plain run 9: {"ready_ms":22802.384908,"settled_ms":22860.082534,"wal_bytes_ready":358720192,"db_bytes_ready":320172032} cold plain run 10: {"ready_ms":23121.95965,"settled_ms":23183.721209000003,"wal_bytes_ready":360310512,"db_bytes_ready":319926272} cold tasks run 10: {"ready_ms":23826.386449,"settled_ms":23897.678285,"wal_bytes_ready":392092192,"db_bytes_ready":349212672} cold tasks run 11: {"ready_ms":23647.759478,"settled_ms":23706.691555999998,"wal_bytes_ready":391041592,"db_bytes_ready":349171712} cold plain run 11: {"ready_ms":22934.914473,"settled_ms":23006.123902,"wal_bytes_ready":360874952,"db_bytes_ready":319971328} cold plain run 12: {"ready_ms":22773.438409000002,"settled_ms":22821.183845,"wal_bytes_ready":359610112,"db_bytes_ready":319799296} cold tasks run 12: {"ready_ms":24166.260990000002,"settled_ms":24277.820889000002,"wal_bytes_ready":390604872,"db_bytes_ready":349007872} cold tasks run 13: {"ready_ms":24067.013601,"settled_ms":24142.887327,"wal_bytes_ready":391222872,"db_bytes_ready":348909568} cold plain run 13: {"ready_ms":22622.34379,"settled_ms":22672.072947,"wal_bytes_ready":359367032,"db_bytes_ready":319983616} cold plain run 14: {"ready_ms":23062.71636,"settled_ms":23128.703277,"wal_bytes_ready":359329952,"db_bytes_ready":319827968} cold tasks run 14: {"ready_ms":23752.694030000002,"settled_ms":23816.129611,"wal_bytes_ready":390905632,"db_bytes_ready":349057024} counts: {"anytime":8543,"incomplete":false,"someday":7957,"tags":{"cooking":1018,"errands":8092,"errands/a":47,"errands/about":50,"errands/after":63,"errands/again":48,"errands/already":71,"errands/always":67,"errands/and":43,"errands/answer":63,"errands/appointment":56,"errands/as":54,"errands/at":53,"errands/backup":55,"errands/before":62,"errands/book":68,"errands/bread":65,"errands/bright":45,"errands/brother":51,"errands/budget":59,"errands/bug":62,"errands/busy":50,"errands/but":58,"errands/buy":57,"errands/café":62,"errands/call":51,"errands/calm":50,"errands/carefully":43,"errands/chai":58,"errands/change":48,"errands/chapter":63,"errands/coffee":75,"errands/cold":69,"errands/colour":47,"errands/dal":64,"errands/dark":46,"errands/design":69,"errands/doctor":56,"errands/draft":45,"errands/early":51,"errands/easy":51,"errands/editor":58,"errands/evening":55,"errands/family":48,"errands/finish":60,"errands/fix":50,"errands/flight":55,"errands/for":58,"errands/forget":60,"errands/friends":44,"errands/from":52,"errands/garden":53,"errands/good":55,"errands/guitar":64,"errands/happy":51,"errands/hard":66,"errands/honestly":60,"errands/hotel":57,"errands/idea":54,"errands/in":57,"errands/into":59,"errands/invoice":64,"errands/is":54,"errands/it":63,"errands/keep":60,"errands/keyboard":53,"errands/kitchen":59,"errands/language":64,"errands/laptop":63,"errands/large":55,"errands/late":67,"errands/lesson":54,"errands/list":62,"errands/loud":56,"errands/lovely":54,"errands/market":52,"errands/maybe":65,"errands/meeting":62,"errands/monsoon":68,"errands/more":52,"errands/morning":56,"errands/move":57,"errands/music":63,"errands/naïve":60,"errands/never":61,"errands/new":47,"errands/notes":55,"errands/of":56,"errands/often":62,"errands/old":61,"errands/on":49,"errands/paper":59,"errands/parents":64,"errands/pencil":72,"errands/phone":65,"errands/plan":62,"errands/practice":52,"errands/probably":55,"errands/project":72,"errands/question":49,"errands/quickly":68,"errands/quiet":57,"errands/rain":60,"errands/read":62,"errands/really":46,"errands/recipe":62,"errands/release":60,"errands/remember":62,"errands/review":52,"errands/rice":64,"errands/run":68,"errands/résumé":54,"errands/screen":70,"errands/sell":48,"errands/sentence":66,"errands/server":56,"errands/sister":63,"errands/sketch":65,"errands/sleep":72,"errands/slowly":44,"errands/small":59,"errands/some":39,"errands/sometimes":57,"errands/song":65,"errands/start":57,"errands/station":40,"errands/still":71,"errands/strange":65,"errands/tea":59,"errands/that":56,"errands/the":51,"errands/they":70,"errands/think":59,"errands/this":55,"errands/tired":47,"errands/to":71,"errands/today":52,"errands/tomorrow":62,"errands/train":56,"errands/travel":48,"errands/try":61,"errands/vegetables":63,"errands/visa":53,"errands/walk":62,"errands/warm":57,"errands/was":57,"errands/we":54,"errands/weather":58,"errands/when":62,"errands/with":44,"errands/word":56,"errands/write":68,"errands/नमस्ते":71,"errands/ദിവസം":60,"errands/☕":51,"errands/日記":64,"errands/🌧️":56,"errands/👍":56,"family":1051,"film":1039,"garden":1054,"health":1048,"home":1043,"ideas":1014,"journal":1068,"learning":981,"money":1015,"music":1072,"people":1070,"project":2139,"project/calternal":1022,"project/house":1149,"reading":987,"run":1030,"todo":1033,"travel":1011,"work":1059,"writing":1067},"today":10766,"untracked":338090,"upcoming":15222} tasks-bench: 100000 notes + 100000 tasks cold.index plain 23011 ms, with tasks 24278 ms (+5.5 %) tasks.describe p50 0.0028 p95 0.0170 ms (with rows: p50 0.0122 p95 0.0305) anytime: p50 5.90 p95 6.34 p99 6.55 max 7.21 ms (n=200, 8543 matching) anytime_by_child_tag: p50 14.78 p95 16.80 p99 17.89 max 22.05 ms (n=200, 8759 matching) counts: p50 1.63 p95 1.80 p99 2.04 max 3.51 ms (n=200, null matching) someday: p50 5.65 p95 6.44 p99 6.91 max 7.41 ms (n=200, 7957 matching) tag: p50 14.28 p95 14.94 p99 15.66 max 15.96 ms (n=200, 8092 matching) today: p50 8.91 p95 9.34 p99 10.47 max 15.02 ms (n=200, 10766 matching) today_by_priority: p50 7.84 p95 8.10 p99 8.28 max 9.40 ms (n=200, 10766 matching) untracked: p50 0.76 p95 0.95 p99 1.00 max 1.09 ms (n=200, null matching) upcoming: p50 9.71 p95 10.93 p99 11.66 max 12.36 ms (n=200, 15222 matching) tasks.update first_touch: p50 5.32 p95 7.61 p99 28.18 max 46.71 ms (n=60) tasks.update warm: p50 2.80 p95 5.27 p99 16.80 max 35.65 ms (n=2340) GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS ``` All measurements and raw cold samples: ```json { "cold_index_ms": { "cache_mode": "dropped", "endpoint": "shutdown, empty WAL, sync -f complete", "growth_pct": 5.505946340383381, "plain": 23010.855531, "plain_ready_ms": 22944.211669, "plain_runs": [ 26923.245736999997, 23818.040039, 23602.733603, 23183.890457, 22694.71609, 23104.614193, 22853.38065, 22991.661481000003, 23010.855531, 22860.082534, 23183.721209000003, 23006.123902, 22821.183845, 22672.072947, 23128.703277 ], "plain_samples": [ { "db_bytes_ready": 319877120, "ready_ms": 26854.118066000003, "settled_ms": 26923.245736999997, "wal_bytes_ready": 358889112 }, { "db_bytes_ready": 320102400, "ready_ms": 23752.508245, "settled_ms": 23818.040039, "wal_bytes_ready": 361150992 }, { "db_bytes_ready": 319688704, "ready_ms": 23546.49817, "settled_ms": 23602.733603, "wal_bytes_ready": 359696632 }, { "db_bytes_ready": 319868928, "ready_ms": 23098.051267, "settled_ms": 23183.890457, "wal_bytes_ready": 363400512 }, { "db_bytes_ready": 319811584, "ready_ms": 22632.931797, "settled_ms": 22694.71609, "wal_bytes_ready": 360475312 }, { "db_bytes_ready": 319930368, "ready_ms": 23040.958812, "settled_ms": 23104.614193, "wal_bytes_ready": 361459992 }, { "db_bytes_ready": 319787008, "ready_ms": 22798.144302, "settled_ms": 22853.38065, "wal_bytes_ready": 358225792 }, { "db_bytes_ready": 319942656, "ready_ms": 22927.480084, "settled_ms": 22991.661481000003, "wal_bytes_ready": 359968552 }, { "db_bytes_ready": 319811584, "ready_ms": 22944.211669, "settled_ms": 23010.855531, "wal_bytes_ready": 359053912 }, { "db_bytes_ready": 320172032, "ready_ms": 22802.384908, "settled_ms": 22860.082534, "wal_bytes_ready": 358720192 }, { "db_bytes_ready": 319926272, "ready_ms": 23121.95965, "settled_ms": 23183.721209000003, "wal_bytes_ready": 360310512 }, { "db_bytes_ready": 319971328, "ready_ms": 22934.914473, "settled_ms": 23006.123902, "wal_bytes_ready": 360874952 }, { "db_bytes_ready": 319799296, "ready_ms": 22773.438409000002, "settled_ms": 22821.183845, "wal_bytes_ready": 359610112 }, { "db_bytes_ready": 319983616, "ready_ms": 22622.34379, "settled_ms": 22672.072947, "wal_bytes_ready": 359367032 }, { "db_bytes_ready": 319827968, "ready_ms": 23062.71636, "settled_ms": 23128.703277, "wal_bytes_ready": 359329952 } ], "tasks": 24277.820889000002, "tasks_ready_ms": 24219.665435, "tasks_runs": [ 24599.414657, 24713.922024, 25104.274897, 24981.864123, 24347.382890999997, 24290.453029999997, 24222.427773, 24273.565833, 23857.009006999997, 24320.835969, 23897.678285, 23706.691555999998, 24277.820889000002, 24142.887327, 23816.129611 ], "tasks_samples": [ { "db_bytes_ready": 349208576, "ready_ms": 24526.617078, "settled_ms": 24599.414657, "wal_bytes_ready": 390864432 }, { "db_bytes_ready": 349052928, "ready_ms": 24644.582034, "settled_ms": 24713.922024, "wal_bytes_ready": 390580152 }, { "db_bytes_ready": 349003776, "ready_ms": 25032.025244, "settled_ms": 25104.274897, "wal_bytes_ready": 389830312 }, { "db_bytes_ready": 348995584, "ready_ms": 24909.257731, "settled_ms": 24981.864123, "wal_bytes_ready": 391169312 }, { "db_bytes_ready": 349110272, "ready_ms": 24262.897990999998, "settled_ms": 24347.382890999997, "wal_bytes_ready": 391667832 }, { "db_bytes_ready": 349167616, "ready_ms": 24224.487492, "settled_ms": 24290.453029999997, "wal_bytes_ready": 390093992 }, { "db_bytes_ready": 349102080, "ready_ms": 24156.534812, "settled_ms": 24222.427773, "wal_bytes_ready": 391844992 }, { "db_bytes_ready": 348938240, "ready_ms": 24219.665435, "settled_ms": 24273.565833, "wal_bytes_ready": 392199312 }, { "db_bytes_ready": 349093888, "ready_ms": 23772.065712, "settled_ms": 23857.009006999997, "wal_bytes_ready": 390782032 }, { "db_bytes_ready": 348975104, "ready_ms": 24251.218829999998, "settled_ms": 24320.835969, "wal_bytes_ready": 391861472 }, { "db_bytes_ready": 349212672, "ready_ms": 23826.386449, "settled_ms": 23897.678285, "wal_bytes_ready": 392092192 }, { "db_bytes_ready": 349171712, "ready_ms": 23647.759478, "settled_ms": 23706.691555999998, "wal_bytes_ready": 391041592 }, { "db_bytes_ready": 349007872, "ready_ms": 24166.260990000002, "settled_ms": 24277.820889000002, "wal_bytes_ready": 390604872 }, { "db_bytes_ready": 348909568, "ready_ms": 24067.013601, "settled_ms": 24142.887327, "wal_bytes_ready": 391222872 }, { "db_bytes_ready": 349057024, "ready_ms": 23752.694030000002, "settled_ms": 23816.129611, "wal_bytes_ready": 390905632 } ] }, "describe_ms": { "pass": { "max": 0.413253, "n": 20000, "p50": 0.002845, "p95": 0.016961, "p99": 0.040986999999999996 }, "pass_and_rows": { "max": 0.996307, "n": 20000, "p50": 0.012193, "p95": 0.030457, "p99": 0.057879 } }, "list_ms": { "anytime": { "matching": 8543, "max": 7.212708, "n": 200, "p50": 5.902475, "p95": 6.339684, "p99": 6.551699999999999 }, "anytime_by_child_tag": { "matching": 8759, "max": 22.050497, "n": 200, "p50": 14.777335, "p95": 16.795405, "p99": 17.891308000000002 }, "counts": { "max": 3.510454, "n": 200, "p50": 1.6255650000000001, "p95": 1.796665, "p99": 2.0398199999999997 }, "someday": { "matching": 7957, "max": 7.409305, "n": 200, "p50": 5.653839, "p95": 6.444189000000001, "p99": 6.90915 }, "tag": { "matching": 8092, "max": 15.961123, "n": 200, "p50": 14.278411, "p95": 14.935431000000001, "p99": 15.657464 }, "today": { "matching": 10766, "max": 15.024599, "n": 200, "p50": 8.906320000000001, "p95": 9.340002, "p99": 10.467203 }, "today_by_priority": { "matching": 10766, "max": 9.396287999999998, "n": 200, "p50": 7.836937000000001, "p95": 8.097705, "p99": 8.277181 }, "untracked": { "max": 1.091334, "n": 200, "p50": 0.757789, "p95": 0.9505790000000001, "p99": 1.002268 }, "upcoming": { "matching": 15222, "max": 12.360629, "n": 200, "p50": 9.71241, "p95": 10.931743, "p99": 11.656571 } }, "notes": 100000, "tasks": 100000, "write_ms": { "first_touch": { "max": 46.70976, "n": 60, "p50": 5.316116, "p95": 7.607539, "p99": 28.175648000000002 }, "warm": { "max": 35.648503999999996, "n": 2340, "p50": 2.8024389999999997, "p95": 5.2710609999999996, "p99": 16.79766 } } } ``` Gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ```
Author
Owner

Fresh full server report 3/3 at 10000 notes on perf-test-01, head d23e80b949. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 542.0 seconds. Fixture Homes and state for this report have been deleted. No budgets changed.

Report verbatim:

Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational)

10000 notes (3000 daily, 35 MB, 5 long notes)

metric unit p50 p95 max noise runs × samples budget
cold.disk_written MB 46.6 46.9 46.9 1% 3 × 1
cold.first_page ms 44.6 45.6 45.6 19% 3 × 1
cold.index s 1.07 1.30 1.30 22% 3 × 1 p95 ≤ 10 ok
cold.mem_peak MB 68.4 69.7 69.7 2% 3 × 1
cold.notes_per_s notes/s 9367 9386 9386 18% 3 × 1 p50 ≥ 2000 ok
cold.startup ms 83.9 87.9 87.9 6% 3 × 1 p95 ≤ 500 ok
home.first_page ms 17.2 21.1 21.1 43% 5 × 1 p95 ≤ 300 ok
home.page ms 0.77 1.21 3.25 24% 5 × 20 p95 ≤ 50 ok
home.page_big ms 21.2 26.5 29.2 28% 5 × 5
home.page_next ms 0.81 1.13 1.51 21% 5 × 20 p95 ≤ 50 ok
home.page_tag ms 4.62 6.05 115 17% 5 × 20 p95 ≤ 50 ok
home.page_title ms 0.60 1.00 2.29 20% 5 × 20 p95 ≤ 50 ok
idle.cpu_pct % 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.1 ok
idle.cpu_ticks ticks 0.00 0.00 0.00 0% 1 × 1
idle.rss MB 37.8 37.8 37.8 0% 1 × 1
idle.threads count 15.0 15.0 15.0 0% 1 × 1
idle.wakeups_per_s /s 0.00 0.00 0.00 0% 1 × 1 p95 ≤ 0.2 ok
journal.catch_up ms 37.9 52.5 52.5 47% 5 × 1 p95 ≤ 1000 ok
journal.entries count 10366 10720 10720 7% 5 × 1
journal.page ms 3.47 4.48 10.1 26% 5 × 11
load.typing_cpu_pct % 0.30 0.30 0.30 0% 1 × 1 p95 ≤ 2 ok
load.typing_wakeups_per_s /s 59.5 59.5 59.5 0% 1 × 1
mem.after_first_page MB 21.2 21.6 21.6 2% 5 × 1
mem.after_opens MB 41.8 42.8 42.8 7% 5 × 1
mem.after_search MB 44.2 45.9 45.9 6% 5 × 1
mem.idle MB 17.7 17.8 17.8 1% 5 × 1 p95 ≤ 64 ok
mem.peak MB 45.9 47.6 47.6 9% 5 × 1 p95 ≤ 256 ok
open.api_get ms 4.73 9.04 16.3 55% 5 × 24 p95 ≤ 50 ok
open.long_note ms 13.4 15.1 15.1 23% 5 × 1 p95 ≤ 250 ok
open.note ms 1.38 5.98 18.9 93% 5 × 24 p95 ≤ 15 ok
search.catch_up s 2.02 2.02 4.01 100% 5 × 3
search.first_query ms 36.2 42.2 42.2 44% 5 × 1 p95 ≤ 1000 ok
search.query ms 2.10 12.6 27.9 39% 5 × 55 p95 ≤ 100 ok
shutdown ms 86.0 87.1 87.1 26% 5 × 1 p95 ≤ 1000 ok
startup.healthz ms 80.6 89.9 89.9 21% 5 × 1 p95 ≤ 300 ok
storm.converge ms 173 180 180 9% 5 × 1 p95 ≤ 2000 ok
storm.disk_written MB 40.6 42.2 42.2 15% 5 × 1 p95 ≤ 50 ok
storm.dropped_clients count 0.00 0.00 0.00 0% 5 × 1 p95 ≤ 0 ok
storm.edits_per_s edits/s 5665 5725 5725 2% 5 × 1 p50 ≥ 1000 ok
storm.outside_edits count 4.00 4.00 4.00 0% 5 × 1
storm.save_ack ms 4.68 8.70 20.9 4% 5 × 10000 p95 ≤ 150 ok
storm.typing s 1.77 1.79 1.79 2% 5 × 1
sync.durable_write ms 12.2 17.2 27.6 2% 5 × 30
sync.round_trip ms 0.30 0.34 1.02 25% 5 × 200 p95 ≤ 10 ok
sync.save_ack ms 2.65 3.22 13.1 76% 5 × 200 p95 ≤ 40 ok
trash.delete ms 27.8 46.6 102 54% 5 × 30
trash.forget ms 5.52 13.2 23.7 16% 5 × 30
trash.restore ms 64.1 119 134 29% 5 × 30
uploads.response ms 95.2 111 139 4% 5 × 20
uploads.round_trip ms 1.08 1.26 5.36 5% 5 × 200
uploads.save_ack ms 3.37 4.70 15.3 2% 5 × 200

Gate output verbatim:

process exit=0

Binary and budget SHA-256:

{
  "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2",
  "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e",
  "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9",
  "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d"
}
Fresh full server report 3/3 at 10000 notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. HDD Homes /srv/homes/perf (xfs), SSD state (ext4). Five warm starts, three unindexed starts, full scenarios and a 300-second idle window. Run through perf-run.sh, perf-lock.sh and build-slot.sh. Cache drops succeeded before the outer command and 9 times inside the harness; expected internal count is 9. Elapsed 542.0 seconds. Fixture Homes and state for this report have been deleted. No budgets changed. Report verbatim: Machine: Homes: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sda1 xfs (rotational) · state: Linux 6.12.113+deb13-amd64 · 4 CPUs · 7.7Gi RAM · disk /dev/sdb1 ext4 (non-rotational) ### 10000 notes (3000 daily, 35 MB, 5 long notes) | metric | unit | p50 | p95 | max | noise | runs × samples | budget | | |---|---|---:|---:|---:|---:|---:|---|---| | cold.disk_written | MB | 46.6 | 46.9 | 46.9 | 1% | 3 × 1 | | | | cold.first_page | ms | 44.6 | 45.6 | 45.6 | 19% | 3 × 1 | | | | cold.index | s | 1.07 | 1.30 | 1.30 | 22% | 3 × 1 | p95 ≤ 10 | ok | | cold.mem_peak | MB | 68.4 | 69.7 | 69.7 | 2% | 3 × 1 | | | | cold.notes_per_s | notes/s | 9367 | 9386 | 9386 | 18% | 3 × 1 | p50 ≥ 2000 | ok | | cold.startup | ms | 83.9 | 87.9 | 87.9 | 6% | 3 × 1 | p95 ≤ 500 | ok | | home.first_page | ms | 17.2 | 21.1 | 21.1 | 43% | 5 × 1 | p95 ≤ 300 | ok | | home.page | ms | 0.77 | 1.21 | 3.25 | 24% | 5 × 20 | p95 ≤ 50 | ok | | home.page_big | ms | 21.2 | 26.5 | 29.2 | 28% | 5 × 5 | | | | home.page_next | ms | 0.81 | 1.13 | 1.51 | 21% | 5 × 20 | p95 ≤ 50 | ok | | home.page_tag | ms | 4.62 | 6.05 | 115 | 17% | 5 × 20 | p95 ≤ 50 | ok | | home.page_title | ms | 0.60 | 1.00 | 2.29 | 20% | 5 × 20 | p95 ≤ 50 | ok | | idle.cpu_pct | % | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.1 | ok | | idle.cpu_ticks | ticks | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | | | | idle.rss | MB | 37.8 | 37.8 | 37.8 | 0% | 1 × 1 | | | | idle.threads | count | 15.0 | 15.0 | 15.0 | 0% | 1 × 1 | | | | idle.wakeups_per_s | /s | 0.00 | 0.00 | 0.00 | 0% | 1 × 1 | p95 ≤ 0.2 | ok | | journal.catch_up | ms | 37.9 | 52.5 | 52.5 | 47% | 5 × 1 | p95 ≤ 1000 | ok | | journal.entries | count | 10366 | 10720 | 10720 | 7% | 5 × 1 | | | | journal.page | ms | 3.47 | 4.48 | 10.1 | 26% | 5 × 11 | | | | load.typing_cpu_pct | % | 0.30 | 0.30 | 0.30 | 0% | 1 × 1 | p95 ≤ 2 | ok | | load.typing_wakeups_per_s | /s | 59.5 | 59.5 | 59.5 | 0% | 1 × 1 | | | | mem.after_first_page | MB | 21.2 | 21.6 | 21.6 | 2% | 5 × 1 | | | | mem.after_opens | MB | 41.8 | 42.8 | 42.8 | 7% | 5 × 1 | | | | mem.after_search | MB | 44.2 | 45.9 | 45.9 | 6% | 5 × 1 | | | | mem.idle | MB | 17.7 | 17.8 | 17.8 | 1% | 5 × 1 | p95 ≤ 64 | ok | | mem.peak | MB | 45.9 | 47.6 | 47.6 | 9% | 5 × 1 | p95 ≤ 256 | ok | | open.api_get | ms | 4.73 | 9.04 | 16.3 | 55% | 5 × 24 | p95 ≤ 50 | ok | | open.long_note | ms | 13.4 | 15.1 | 15.1 | 23% | 5 × 1 | p95 ≤ 250 | ok | | open.note | ms | 1.38 | 5.98 | 18.9 | 93% | 5 × 24 | p95 ≤ 15 | ok | | search.catch_up | s | 2.02 | 2.02 | 4.01 | 100% | 5 × 3 | | | | search.first_query | ms | 36.2 | 42.2 | 42.2 | 44% | 5 × 1 | p95 ≤ 1000 | ok | | search.query | ms | 2.10 | 12.6 | 27.9 | 39% | 5 × 55 | p95 ≤ 100 | ok | | shutdown | ms | 86.0 | 87.1 | 87.1 | 26% | 5 × 1 | p95 ≤ 1000 | ok | | startup.healthz | ms | 80.6 | 89.9 | 89.9 | 21% | 5 × 1 | p95 ≤ 300 | ok | | storm.converge | ms | 173 | 180 | 180 | 9% | 5 × 1 | p95 ≤ 2000 | ok | | storm.disk_written | MB | 40.6 | 42.2 | 42.2 | 15% | 5 × 1 | p95 ≤ 50 | ok | | storm.dropped_clients | count | 0.00 | 0.00 | 0.00 | 0% | 5 × 1 | p95 ≤ 0 | ok | | storm.edits_per_s | edits/s | 5665 | 5725 | 5725 | 2% | 5 × 1 | p50 ≥ 1000 | ok | | storm.outside_edits | count | 4.00 | 4.00 | 4.00 | 0% | 5 × 1 | | | | storm.save_ack | ms | 4.68 | 8.70 | 20.9 | 4% | 5 × 10000 | p95 ≤ 150 | ok | | storm.typing | s | 1.77 | 1.79 | 1.79 | 2% | 5 × 1 | | | | sync.durable_write | ms | 12.2 | 17.2 | 27.6 | 2% | 5 × 30 | | | | sync.round_trip | ms | 0.30 | 0.34 | 1.02 | 25% | 5 × 200 | p95 ≤ 10 | ok | | sync.save_ack | ms | 2.65 | 3.22 | 13.1 | 76% | 5 × 200 | p95 ≤ 40 | ok | | trash.delete | ms | 27.8 | 46.6 | 102 | 54% | 5 × 30 | | | | trash.forget | ms | 5.52 | 13.2 | 23.7 | 16% | 5 × 30 | | | | trash.restore | ms | 64.1 | 119 | 134 | 29% | 5 × 30 | | | | uploads.response | ms | 95.2 | 111 | 139 | 4% | 5 × 20 | | | | uploads.round_trip | ms | 1.08 | 1.26 | 5.36 | 5% | 5 × 200 | | | | uploads.save_ack | ms | 3.37 | 4.70 | 15.3 | 2% | 5 × 200 | | | Gate output verbatim: ```text process exit=0 ``` Binary and budget SHA-256: ```json { "calternal": "c910611d20e55434913a43295060903745000af748c95bff002bdf2466e44bc2", "calternal-perf": "248beb3a8123084a935c49fe87c072115b867a1183900827ac647c892194892e", "tasks-bench": "f260cdcc9e5b011aa9a52e6fe89434d3fa22dd1bb1b909ede30a3cceb310a9e9", "budgets.json": "719266cf043e49cfc54cdaf9cd5b17114c44c753b452595885d13ece83d68d8d" } ```
Author
Owner

Tasks report 3/3 at 10000 base notes plus 10000 task notes on perf-test-01, head d23e80b949. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 68.0 seconds. Fixture Homes and state deleted.

Output verbatim:

making a Home of 10000 notes
adding 10000 task notes
cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f
cold plain run 0: {"ready_ms":1138.229261,"settled_ms":1181.100976,"wal_bytes_ready":31217272,"db_bytes_ready":29171712}
cold tasks run 0: {"ready_ms":1209.133292,"settled_ms":1233.8796109999998,"wal_bytes_ready":34047712,"db_bytes_ready":32034816}
cold tasks run 1: {"ready_ms":1201.167289,"settled_ms":1225.606963,"wal_bytes_ready":33816992,"db_bytes_ready":32047104}
cold plain run 1: {"ready_ms":2743.665455,"settled_ms":2767.6134079999997,"wal_bytes_ready":30726992,"db_bytes_ready":29257728}
cold plain run 2: {"ready_ms":1692.8321369999999,"settled_ms":1717.850014,"wal_bytes_ready":31035992,"db_bytes_ready":29233152}
cold tasks run 2: {"ready_ms":1671.902401,"settled_ms":1698.564669,"wal_bytes_ready":33985912,"db_bytes_ready":32030720}
cold tasks run 3: {"ready_ms":1736.805189,"settled_ms":1763.1325900000002,"wal_bytes_ready":33973552,"db_bytes_ready":32022528}
cold plain run 3: {"ready_ms":1603.535135,"settled_ms":1649.8422659999999,"wal_bytes_ready":30974192,"db_bytes_ready":29224960}
cold plain run 4: {"ready_ms":1565.911996,"settled_ms":1590.042862,"wal_bytes_ready":30739352,"db_bytes_ready":29237248}
cold tasks run 4: {"ready_ms":1717.751649,"settled_ms":1742.8869169999998,"wal_bytes_ready":34228992,"db_bytes_ready":32034816}
cold tasks run 5: {"ready_ms":1725.7055320000002,"settled_ms":1749.9137629999998,"wal_bytes_ready":33919992,"db_bytes_ready":32038912}
cold plain run 5: {"ready_ms":1572.5396649999998,"settled_ms":1595.722836,"wal_bytes_ready":30788792,"db_bytes_ready":29216768}
cold plain run 6: {"ready_ms":1584.045432,"settled_ms":1611.052196,"wal_bytes_ready":30726992,"db_bytes_ready":29237248}
cold tasks run 6: {"ready_ms":1666.124599,"settled_ms":1691.1202130000001,"wal_bytes_ready":34006512,"db_bytes_ready":32034816}
cold tasks run 7: {"ready_ms":1668.227189,"settled_ms":1694.1374389999999,"wal_bytes_ready":34212512,"db_bytes_ready":32026624}
cold plain run 7: {"ready_ms":1545.4352949999998,"settled_ms":1588.735092,"wal_bytes_ready":30656952,"db_bytes_ready":29216768}
cold plain run 8: {"ready_ms":1564.511593,"settled_ms":1589.476882,"wal_bytes_ready":30698152,"db_bytes_ready":29253632}
cold tasks run 8: {"ready_ms":1654.1216789999999,"settled_ms":1700.6764329999999,"wal_bytes_ready":34022992,"db_bytes_ready":32059392}
cold tasks run 9: {"ready_ms":1673.029831,"settled_ms":1697.830683,"wal_bytes_ready":33961192,"db_bytes_ready":32047104}
cold plain run 9: {"ready_ms":1540.739484,"settled_ms":1566.662998,"wal_bytes_ready":30640472,"db_bytes_ready":29249536}
cold plain run 10: {"ready_ms":1575.392122,"settled_ms":1603.787046,"wal_bytes_ready":30673432,"db_bytes_ready":29220864}
cold tasks run 10: {"ready_ms":1647.381677,"settled_ms":1673.023744,"wal_bytes_ready":33887032,"db_bytes_ready":32034816}
cold tasks run 11: {"ready_ms":1649.12749,"settled_ms":1673.646714,"wal_bytes_ready":34443232,"db_bytes_ready":32043008}
cold plain run 11: {"ready_ms":1537.2533779999999,"settled_ms":1561.880054,"wal_bytes_ready":30595152,"db_bytes_ready":29237248}
cold plain run 12: {"ready_ms":1562.260527,"settled_ms":1605.535437,"wal_bytes_ready":30751712,"db_bytes_ready":29278208}
cold tasks run 12: {"ready_ms":1638.815343,"settled_ms":1663.25587,"wal_bytes_ready":34278432,"db_bytes_ready":32059392}
cold tasks run 13: {"ready_ms":1667.4435970000002,"settled_ms":1687.4821180000001,"wal_bytes_ready":33796392,"db_bytes_ready":32043008}
cold plain run 13: {"ready_ms":1563.417629,"settled_ms":1587.791009,"wal_bytes_ready":30706392,"db_bytes_ready":29216768}
cold plain run 14: {"ready_ms":1554.9794219999999,"settled_ms":1585.738646,"wal_bytes_ready":31192552,"db_bytes_ready":29229056}
cold tasks run 14: {"ready_ms":1655.173204,"settled_ms":1683.177898,"wal_bytes_ready":34290792,"db_bytes_ready":32010240}
counts: {"anytime":868,"incomplete":false,"someday":822,"tags":{"cooking":97,"errands":809,"errands/a":6,"errands/about":3,"errands/after":6,"errands/again":3,"errands/already":6,"errands/always":9,"errands/and":2,"errands/answer":5,"errands/appointment":5,"errands/as":6,"errands/at":6,"errands/backup":4,"errands/before":8,"errands/book":13,"errands/bread":3,"errands/bright":4,"errands/brother":12,"errands/budget":5,"errands/bug":6,"errands/busy":7,"errands/but":5,"errands/café":6,"errands/call":5,"errands/calm":5,"errands/carefully":8,"errands/chai":5,"errands/change":4,"errands/chapter":6,"errands/coffee":9,"errands/cold":8,"errands/colour":3,"errands/dal":7,"errands/dark":1,"errands/design":10,"errands/doctor":5,"errands/draft":5,"errands/early":6,"errands/easy":4,"errands/editor":7,"errands/evening":5,"errands/family":2,"errands/finish":4,"errands/fix":4,"errands/flight":7,"errands/for":3,"errands/forget":6,"errands/friends":2,"errands/from":10,"errands/garden":4,"errands/good":9,"errands/guitar":9,"errands/happy":4,"errands/hard":9,"errands/honestly":4,"errands/hotel":5,"errands/idea":4,"errands/in":3,"errands/into":6,"errands/invoice":6,"errands/is":3,"errands/it":9,"errands/keep":4,"errands/keyboard":6,"errands/kitchen":6,"errands/language":8,"errands/laptop":2,"errands/large":5,"errands/late":5,"errands/lesson":6,"errands/list":4,"errands/loud":3,"errands/lovely":4,"errands/market":4,"errands/maybe":6,"errands/meeting":7,"errands/monsoon":5,"errands/more":6,"errands/move":6,"errands/music":4,"errands/naïve":8,"errands/never":7,"errands/new":9,"errands/notes":6,"errands/of":8,"errands/often":8,"errands/old":6,"errands/on":5,"errands/paper":8,"errands/parents":7,"errands/pencil":12,"errands/phone":4,"errands/plan":9,"errands/practice":10,"errands/probably":3,"errands/project":6,"errands/question":7,"errands/quickly":5,"errands/quiet":5,"errands/rain":5,"errands/read":2,"errands/really":2,"errands/recipe":8,"errands/release":6,"errands/remember":7,"errands/review":6,"errands/rice":11,"errands/run":9,"errands/résumé":5,"errands/screen":3,"errands/sell":4,"errands/sentence":2,"errands/server":4,"errands/sister":6,"errands/sketch":9,"errands/sleep":9,"errands/slowly":4,"errands/small":10,"errands/some":3,"errands/sometimes":8,"errands/song":9,"errands/start":8,"errands/station":6,"errands/still":4,"errands/strange":4,"errands/tea":1,"errands/that":8,"errands/the":6,"errands/they":4,"errands/think":4,"errands/this":7,"errands/tired":3,"errands/to":5,"errands/today":7,"errands/tomorrow":5,"errands/train":5,"errands/travel":5,"errands/try":7,"errands/vegetables":10,"errands/visa":9,"errands/walk":4,"errands/warm":6,"errands/we":9,"errands/weather":6,"errands/when":3,"errands/with":5,"errands/word":2,"errands/write":9,"errands/नमस्ते":11,"errands/ദിവസം":7,"errands/☕":2,"errands/日記":8,"errands/🌧️":2,"errands/👍":7,"family":99,"film":106,"garden":103,"health":107,"home":91,"ideas":99,"journal":104,"learning":96,"money":90,"music":123,"people":105,"project":237,"project/calternal":133,"project/house":109,"reading":104,"run":90,"todo":107,"travel":99,"work":96,"writing":132},"today":1044,"untracked":26708,"upcoming":1513}
tasks-bench: 10000 notes + 10000 tasks
cold.index plain 1590 ms, with tasks 1691 ms (+6.4 %)
tasks.describe p50 0.0029 p95 0.0141 ms (with rows: p50 0.0122 p95 0.0331)
               anytime: p50 1.91 p95 2.13 p99 2.43 max 2.57 ms (n=200, 868 matching)
  anytime_by_child_tag: p50 2.44 p95 2.79 p99 2.91 max 3.30 ms (n=200, 886 matching)
                counts: p50 0.24 p95 0.27 p99 0.31 max 0.32 ms (n=200, null matching)
               someday: p50 1.91 p95 2.07 p99 2.23 max 2.29 ms (n=200, 822 matching)
                   tag: p50 2.62 p95 3.10 p99 3.36 max 6.88 ms (n=200, 809 matching)
                 today: p50 2.17 p95 2.33 p99 2.44 max 2.48 ms (n=200, 1044 matching)
     today_by_priority: p50 2.19 p95 2.43 p99 2.57 max 2.87 ms (n=200, 1044 matching)
             untracked: p50 0.72 p95 0.87 p99 0.93 max 1.00 ms (n=200, null matching)
              upcoming: p50 2.35 p95 2.59 p99 2.78 max 2.97 ms (n=200, 1513 matching)
tasks.update first_touch: p50 5.20 p95 5.74 p99 6.15 max 16.42 ms (n=60)
tasks.update        warm: p50 2.75 p95 5.08 p99 15.37 max 36.39 ms (n=2340)
GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS

All measurements and raw cold samples:

{
  "cold_index_ms": {
    "cache_mode": "dropped",
    "endpoint": "shutdown, empty WAL, sync -f complete",
    "growth_pct": 6.356894736338255,
    "plain": 1590.042862,
    "plain_ready_ms": 1564.511593,
    "plain_runs": [
      1181.100976,
      2767.6134079999997,
      1717.850014,
      1649.8422659999999,
      1590.042862,
      1595.722836,
      1611.052196,
      1588.735092,
      1589.476882,
      1566.662998,
      1603.787046,
      1561.880054,
      1605.535437,
      1587.791009,
      1585.738646
    ],
    "plain_samples": [
      {
        "db_bytes_ready": 29171712,
        "ready_ms": 1138.229261,
        "settled_ms": 1181.100976,
        "wal_bytes_ready": 31217272
      },
      {
        "db_bytes_ready": 29257728,
        "ready_ms": 2743.665455,
        "settled_ms": 2767.6134079999997,
        "wal_bytes_ready": 30726992
      },
      {
        "db_bytes_ready": 29233152,
        "ready_ms": 1692.8321369999999,
        "settled_ms": 1717.850014,
        "wal_bytes_ready": 31035992
      },
      {
        "db_bytes_ready": 29224960,
        "ready_ms": 1603.535135,
        "settled_ms": 1649.8422659999999,
        "wal_bytes_ready": 30974192
      },
      {
        "db_bytes_ready": 29237248,
        "ready_ms": 1565.911996,
        "settled_ms": 1590.042862,
        "wal_bytes_ready": 30739352
      },
      {
        "db_bytes_ready": 29216768,
        "ready_ms": 1572.5396649999998,
        "settled_ms": 1595.722836,
        "wal_bytes_ready": 30788792
      },
      {
        "db_bytes_ready": 29237248,
        "ready_ms": 1584.045432,
        "settled_ms": 1611.052196,
        "wal_bytes_ready": 30726992
      },
      {
        "db_bytes_ready": 29216768,
        "ready_ms": 1545.4352949999998,
        "settled_ms": 1588.735092,
        "wal_bytes_ready": 30656952
      },
      {
        "db_bytes_ready": 29253632,
        "ready_ms": 1564.511593,
        "settled_ms": 1589.476882,
        "wal_bytes_ready": 30698152
      },
      {
        "db_bytes_ready": 29249536,
        "ready_ms": 1540.739484,
        "settled_ms": 1566.662998,
        "wal_bytes_ready": 30640472
      },
      {
        "db_bytes_ready": 29220864,
        "ready_ms": 1575.392122,
        "settled_ms": 1603.787046,
        "wal_bytes_ready": 30673432
      },
      {
        "db_bytes_ready": 29237248,
        "ready_ms": 1537.2533779999999,
        "settled_ms": 1561.880054,
        "wal_bytes_ready": 30595152
      },
      {
        "db_bytes_ready": 29278208,
        "ready_ms": 1562.260527,
        "settled_ms": 1605.535437,
        "wal_bytes_ready": 30751712
      },
      {
        "db_bytes_ready": 29216768,
        "ready_ms": 1563.417629,
        "settled_ms": 1587.791009,
        "wal_bytes_ready": 30706392
      },
      {
        "db_bytes_ready": 29229056,
        "ready_ms": 1554.9794219999999,
        "settled_ms": 1585.738646,
        "wal_bytes_ready": 31192552
      }
    ],
    "tasks": 1691.1202130000001,
    "tasks_ready_ms": 1666.124599,
    "tasks_runs": [
      1233.8796109999998,
      1225.606963,
      1698.564669,
      1763.1325900000002,
      1742.8869169999998,
      1749.9137629999998,
      1691.1202130000001,
      1694.1374389999999,
      1700.6764329999999,
      1697.830683,
      1673.023744,
      1673.646714,
      1663.25587,
      1687.4821180000001,
      1683.177898
    ],
    "tasks_samples": [
      {
        "db_bytes_ready": 32034816,
        "ready_ms": 1209.133292,
        "settled_ms": 1233.8796109999998,
        "wal_bytes_ready": 34047712
      },
      {
        "db_bytes_ready": 32047104,
        "ready_ms": 1201.167289,
        "settled_ms": 1225.606963,
        "wal_bytes_ready": 33816992
      },
      {
        "db_bytes_ready": 32030720,
        "ready_ms": 1671.902401,
        "settled_ms": 1698.564669,
        "wal_bytes_ready": 33985912
      },
      {
        "db_bytes_ready": 32022528,
        "ready_ms": 1736.805189,
        "settled_ms": 1763.1325900000002,
        "wal_bytes_ready": 33973552
      },
      {
        "db_bytes_ready": 32034816,
        "ready_ms": 1717.751649,
        "settled_ms": 1742.8869169999998,
        "wal_bytes_ready": 34228992
      },
      {
        "db_bytes_ready": 32038912,
        "ready_ms": 1725.7055320000002,
        "settled_ms": 1749.9137629999998,
        "wal_bytes_ready": 33919992
      },
      {
        "db_bytes_ready": 32034816,
        "ready_ms": 1666.124599,
        "settled_ms": 1691.1202130000001,
        "wal_bytes_ready": 34006512
      },
      {
        "db_bytes_ready": 32026624,
        "ready_ms": 1668.227189,
        "settled_ms": 1694.1374389999999,
        "wal_bytes_ready": 34212512
      },
      {
        "db_bytes_ready": 32059392,
        "ready_ms": 1654.1216789999999,
        "settled_ms": 1700.6764329999999,
        "wal_bytes_ready": 34022992
      },
      {
        "db_bytes_ready": 32047104,
        "ready_ms": 1673.029831,
        "settled_ms": 1697.830683,
        "wal_bytes_ready": 33961192
      },
      {
        "db_bytes_ready": 32034816,
        "ready_ms": 1647.381677,
        "settled_ms": 1673.023744,
        "wal_bytes_ready": 33887032
      },
      {
        "db_bytes_ready": 32043008,
        "ready_ms": 1649.12749,
        "settled_ms": 1673.646714,
        "wal_bytes_ready": 34443232
      },
      {
        "db_bytes_ready": 32059392,
        "ready_ms": 1638.815343,
        "settled_ms": 1663.25587,
        "wal_bytes_ready": 34278432
      },
      {
        "db_bytes_ready": 32043008,
        "ready_ms": 1667.4435970000002,
        "settled_ms": 1687.4821180000001,
        "wal_bytes_ready": 33796392
      },
      {
        "db_bytes_ready": 32010240,
        "ready_ms": 1655.173204,
        "settled_ms": 1683.177898,
        "wal_bytes_ready": 34290792
      }
    ]
  },
  "describe_ms": {
    "pass": {
      "max": 0.429825,
      "n": 20000,
      "p50": 0.0029349999999999997,
      "p95": 0.014116,
      "p99": 0.035226
    },
    "pass_and_rows": {
      "max": 0.5126510000000001,
      "n": 20000,
      "p50": 0.012193,
      "p95": 0.033062,
      "p99": 0.055182999999999996
    }
  },
  "list_ms": {
    "anytime": {
      "matching": 868,
      "max": 2.57325,
      "n": 200,
      "p50": 1.909577,
      "p95": 2.127085,
      "p99": 2.427397
    },
    "anytime_by_child_tag": {
      "matching": 886,
      "max": 3.295815,
      "n": 200,
      "p50": 2.43933,
      "p95": 2.787623,
      "p99": 2.9065950000000003
    },
    "counts": {
      "max": 0.32357600000000003,
      "n": 200,
      "p50": 0.241192,
      "p95": 0.27255999999999997,
      "p99": 0.306475
    },
    "someday": {
      "matching": 822,
      "max": 2.2860329999999998,
      "n": 200,
      "p50": 1.913715,
      "p95": 2.067124,
      "p99": 2.228195
    },
    "tag": {
      "matching": 809,
      "max": 6.878045,
      "n": 200,
      "p50": 2.6232550000000003,
      "p95": 3.104206,
      "p99": 3.36366
    },
    "today": {
      "matching": 1044,
      "max": 2.478363,
      "n": 200,
      "p50": 2.168142,
      "p95": 2.330655,
      "p99": 2.436094
    },
    "today_by_priority": {
      "matching": 1044,
      "max": 2.8728320000000003,
      "n": 200,
      "p50": 2.189351,
      "p95": 2.426887,
      "p99": 2.568612
    },
    "untracked": {
      "max": 1.004032,
      "n": 200,
      "p50": 0.7245170000000001,
      "p95": 0.867245,
      "p99": 0.926836
    },
    "upcoming": {
      "matching": 1513,
      "max": 2.971146,
      "n": 200,
      "p50": 2.352767,
      "p95": 2.586225,
      "p99": 2.776351
    }
  },
  "notes": 10000,
  "tasks": 10000,
  "write_ms": {
    "first_touch": {
      "max": 16.421623999999998,
      "n": 60,
      "p50": 5.199131,
      "p95": 5.738852,
      "p99": 6.145403
    },
    "warm": {
      "max": 36.393468999999996,
      "n": 2340,
      "p50": 2.7506530000000002,
      "p95": 5.07628,
      "p99": 15.372829
    }
  }
}

Gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
Tasks report 3/3 at 10000 base notes plus 10000 task notes on perf-test-01, head d23e80b9493b2f3da32ac5c4cd15e09695da41af. The cold comparison uses 15 alternating pairs and includes shutdown, an empty WAL and sync -f. Successful internal cache drops: 30, expected 30. The outer perf-run.sh cache drop also succeeded. Elapsed 68.0 seconds. Fixture Homes and state deleted. Output verbatim: ```text making a Home of 10000 notes adding 10000 task notes cold.index: 15 pairs, cache=dropped, endpoint=shutdown + sync -f cold plain run 0: {"ready_ms":1138.229261,"settled_ms":1181.100976,"wal_bytes_ready":31217272,"db_bytes_ready":29171712} cold tasks run 0: {"ready_ms":1209.133292,"settled_ms":1233.8796109999998,"wal_bytes_ready":34047712,"db_bytes_ready":32034816} cold tasks run 1: {"ready_ms":1201.167289,"settled_ms":1225.606963,"wal_bytes_ready":33816992,"db_bytes_ready":32047104} cold plain run 1: {"ready_ms":2743.665455,"settled_ms":2767.6134079999997,"wal_bytes_ready":30726992,"db_bytes_ready":29257728} cold plain run 2: {"ready_ms":1692.8321369999999,"settled_ms":1717.850014,"wal_bytes_ready":31035992,"db_bytes_ready":29233152} cold tasks run 2: {"ready_ms":1671.902401,"settled_ms":1698.564669,"wal_bytes_ready":33985912,"db_bytes_ready":32030720} cold tasks run 3: {"ready_ms":1736.805189,"settled_ms":1763.1325900000002,"wal_bytes_ready":33973552,"db_bytes_ready":32022528} cold plain run 3: {"ready_ms":1603.535135,"settled_ms":1649.8422659999999,"wal_bytes_ready":30974192,"db_bytes_ready":29224960} cold plain run 4: {"ready_ms":1565.911996,"settled_ms":1590.042862,"wal_bytes_ready":30739352,"db_bytes_ready":29237248} cold tasks run 4: {"ready_ms":1717.751649,"settled_ms":1742.8869169999998,"wal_bytes_ready":34228992,"db_bytes_ready":32034816} cold tasks run 5: {"ready_ms":1725.7055320000002,"settled_ms":1749.9137629999998,"wal_bytes_ready":33919992,"db_bytes_ready":32038912} cold plain run 5: {"ready_ms":1572.5396649999998,"settled_ms":1595.722836,"wal_bytes_ready":30788792,"db_bytes_ready":29216768} cold plain run 6: {"ready_ms":1584.045432,"settled_ms":1611.052196,"wal_bytes_ready":30726992,"db_bytes_ready":29237248} cold tasks run 6: {"ready_ms":1666.124599,"settled_ms":1691.1202130000001,"wal_bytes_ready":34006512,"db_bytes_ready":32034816} cold tasks run 7: {"ready_ms":1668.227189,"settled_ms":1694.1374389999999,"wal_bytes_ready":34212512,"db_bytes_ready":32026624} cold plain run 7: {"ready_ms":1545.4352949999998,"settled_ms":1588.735092,"wal_bytes_ready":30656952,"db_bytes_ready":29216768} cold plain run 8: {"ready_ms":1564.511593,"settled_ms":1589.476882,"wal_bytes_ready":30698152,"db_bytes_ready":29253632} cold tasks run 8: {"ready_ms":1654.1216789999999,"settled_ms":1700.6764329999999,"wal_bytes_ready":34022992,"db_bytes_ready":32059392} cold tasks run 9: {"ready_ms":1673.029831,"settled_ms":1697.830683,"wal_bytes_ready":33961192,"db_bytes_ready":32047104} cold plain run 9: {"ready_ms":1540.739484,"settled_ms":1566.662998,"wal_bytes_ready":30640472,"db_bytes_ready":29249536} cold plain run 10: {"ready_ms":1575.392122,"settled_ms":1603.787046,"wal_bytes_ready":30673432,"db_bytes_ready":29220864} cold tasks run 10: {"ready_ms":1647.381677,"settled_ms":1673.023744,"wal_bytes_ready":33887032,"db_bytes_ready":32034816} cold tasks run 11: {"ready_ms":1649.12749,"settled_ms":1673.646714,"wal_bytes_ready":34443232,"db_bytes_ready":32043008} cold plain run 11: {"ready_ms":1537.2533779999999,"settled_ms":1561.880054,"wal_bytes_ready":30595152,"db_bytes_ready":29237248} cold plain run 12: {"ready_ms":1562.260527,"settled_ms":1605.535437,"wal_bytes_ready":30751712,"db_bytes_ready":29278208} cold tasks run 12: {"ready_ms":1638.815343,"settled_ms":1663.25587,"wal_bytes_ready":34278432,"db_bytes_ready":32059392} cold tasks run 13: {"ready_ms":1667.4435970000002,"settled_ms":1687.4821180000001,"wal_bytes_ready":33796392,"db_bytes_ready":32043008} cold plain run 13: {"ready_ms":1563.417629,"settled_ms":1587.791009,"wal_bytes_ready":30706392,"db_bytes_ready":29216768} cold plain run 14: {"ready_ms":1554.9794219999999,"settled_ms":1585.738646,"wal_bytes_ready":31192552,"db_bytes_ready":29229056} cold tasks run 14: {"ready_ms":1655.173204,"settled_ms":1683.177898,"wal_bytes_ready":34290792,"db_bytes_ready":32010240} counts: {"anytime":868,"incomplete":false,"someday":822,"tags":{"cooking":97,"errands":809,"errands/a":6,"errands/about":3,"errands/after":6,"errands/again":3,"errands/already":6,"errands/always":9,"errands/and":2,"errands/answer":5,"errands/appointment":5,"errands/as":6,"errands/at":6,"errands/backup":4,"errands/before":8,"errands/book":13,"errands/bread":3,"errands/bright":4,"errands/brother":12,"errands/budget":5,"errands/bug":6,"errands/busy":7,"errands/but":5,"errands/café":6,"errands/call":5,"errands/calm":5,"errands/carefully":8,"errands/chai":5,"errands/change":4,"errands/chapter":6,"errands/coffee":9,"errands/cold":8,"errands/colour":3,"errands/dal":7,"errands/dark":1,"errands/design":10,"errands/doctor":5,"errands/draft":5,"errands/early":6,"errands/easy":4,"errands/editor":7,"errands/evening":5,"errands/family":2,"errands/finish":4,"errands/fix":4,"errands/flight":7,"errands/for":3,"errands/forget":6,"errands/friends":2,"errands/from":10,"errands/garden":4,"errands/good":9,"errands/guitar":9,"errands/happy":4,"errands/hard":9,"errands/honestly":4,"errands/hotel":5,"errands/idea":4,"errands/in":3,"errands/into":6,"errands/invoice":6,"errands/is":3,"errands/it":9,"errands/keep":4,"errands/keyboard":6,"errands/kitchen":6,"errands/language":8,"errands/laptop":2,"errands/large":5,"errands/late":5,"errands/lesson":6,"errands/list":4,"errands/loud":3,"errands/lovely":4,"errands/market":4,"errands/maybe":6,"errands/meeting":7,"errands/monsoon":5,"errands/more":6,"errands/move":6,"errands/music":4,"errands/naïve":8,"errands/never":7,"errands/new":9,"errands/notes":6,"errands/of":8,"errands/often":8,"errands/old":6,"errands/on":5,"errands/paper":8,"errands/parents":7,"errands/pencil":12,"errands/phone":4,"errands/plan":9,"errands/practice":10,"errands/probably":3,"errands/project":6,"errands/question":7,"errands/quickly":5,"errands/quiet":5,"errands/rain":5,"errands/read":2,"errands/really":2,"errands/recipe":8,"errands/release":6,"errands/remember":7,"errands/review":6,"errands/rice":11,"errands/run":9,"errands/résumé":5,"errands/screen":3,"errands/sell":4,"errands/sentence":2,"errands/server":4,"errands/sister":6,"errands/sketch":9,"errands/sleep":9,"errands/slowly":4,"errands/small":10,"errands/some":3,"errands/sometimes":8,"errands/song":9,"errands/start":8,"errands/station":6,"errands/still":4,"errands/strange":4,"errands/tea":1,"errands/that":8,"errands/the":6,"errands/they":4,"errands/think":4,"errands/this":7,"errands/tired":3,"errands/to":5,"errands/today":7,"errands/tomorrow":5,"errands/train":5,"errands/travel":5,"errands/try":7,"errands/vegetables":10,"errands/visa":9,"errands/walk":4,"errands/warm":6,"errands/we":9,"errands/weather":6,"errands/when":3,"errands/with":5,"errands/word":2,"errands/write":9,"errands/नमस्ते":11,"errands/ദിവസം":7,"errands/☕":2,"errands/日記":8,"errands/🌧️":2,"errands/👍":7,"family":99,"film":106,"garden":103,"health":107,"home":91,"ideas":99,"journal":104,"learning":96,"money":90,"music":123,"people":105,"project":237,"project/calternal":133,"project/house":109,"reading":104,"run":90,"todo":107,"travel":99,"work":96,"writing":132},"today":1044,"untracked":26708,"upcoming":1513} tasks-bench: 10000 notes + 10000 tasks cold.index plain 1590 ms, with tasks 1691 ms (+6.4 %) tasks.describe p50 0.0029 p95 0.0141 ms (with rows: p50 0.0122 p95 0.0331) anytime: p50 1.91 p95 2.13 p99 2.43 max 2.57 ms (n=200, 868 matching) anytime_by_child_tag: p50 2.44 p95 2.79 p99 2.91 max 3.30 ms (n=200, 886 matching) counts: p50 0.24 p95 0.27 p99 0.31 max 0.32 ms (n=200, null matching) someday: p50 1.91 p95 2.07 p99 2.23 max 2.29 ms (n=200, 822 matching) tag: p50 2.62 p95 3.10 p99 3.36 max 6.88 ms (n=200, 809 matching) today: p50 2.17 p95 2.33 p99 2.44 max 2.48 ms (n=200, 1044 matching) today_by_priority: p50 2.19 p95 2.43 p99 2.57 max 2.87 ms (n=200, 1044 matching) untracked: p50 0.72 p95 0.87 p99 0.93 max 1.00 ms (n=200, null matching) upcoming: p50 2.35 p95 2.59 p99 2.78 max 2.97 ms (n=200, 1513 matching) tasks.update first_touch: p50 5.20 p95 5.74 p99 6.15 max 16.42 ms (n=60) tasks.update warm: p50 2.75 p95 5.08 p99 15.37 max 36.39 ms (n=2340) GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS ``` All measurements and raw cold samples: ```json { "cold_index_ms": { "cache_mode": "dropped", "endpoint": "shutdown, empty WAL, sync -f complete", "growth_pct": 6.356894736338255, "plain": 1590.042862, "plain_ready_ms": 1564.511593, "plain_runs": [ 1181.100976, 2767.6134079999997, 1717.850014, 1649.8422659999999, 1590.042862, 1595.722836, 1611.052196, 1588.735092, 1589.476882, 1566.662998, 1603.787046, 1561.880054, 1605.535437, 1587.791009, 1585.738646 ], "plain_samples": [ { "db_bytes_ready": 29171712, "ready_ms": 1138.229261, "settled_ms": 1181.100976, "wal_bytes_ready": 31217272 }, { "db_bytes_ready": 29257728, "ready_ms": 2743.665455, "settled_ms": 2767.6134079999997, "wal_bytes_ready": 30726992 }, { "db_bytes_ready": 29233152, "ready_ms": 1692.8321369999999, "settled_ms": 1717.850014, "wal_bytes_ready": 31035992 }, { "db_bytes_ready": 29224960, "ready_ms": 1603.535135, "settled_ms": 1649.8422659999999, "wal_bytes_ready": 30974192 }, { "db_bytes_ready": 29237248, "ready_ms": 1565.911996, "settled_ms": 1590.042862, "wal_bytes_ready": 30739352 }, { "db_bytes_ready": 29216768, "ready_ms": 1572.5396649999998, "settled_ms": 1595.722836, "wal_bytes_ready": 30788792 }, { "db_bytes_ready": 29237248, "ready_ms": 1584.045432, "settled_ms": 1611.052196, "wal_bytes_ready": 30726992 }, { "db_bytes_ready": 29216768, "ready_ms": 1545.4352949999998, "settled_ms": 1588.735092, "wal_bytes_ready": 30656952 }, { "db_bytes_ready": 29253632, "ready_ms": 1564.511593, "settled_ms": 1589.476882, "wal_bytes_ready": 30698152 }, { "db_bytes_ready": 29249536, "ready_ms": 1540.739484, "settled_ms": 1566.662998, "wal_bytes_ready": 30640472 }, { "db_bytes_ready": 29220864, "ready_ms": 1575.392122, "settled_ms": 1603.787046, "wal_bytes_ready": 30673432 }, { "db_bytes_ready": 29237248, "ready_ms": 1537.2533779999999, "settled_ms": 1561.880054, "wal_bytes_ready": 30595152 }, { "db_bytes_ready": 29278208, "ready_ms": 1562.260527, "settled_ms": 1605.535437, "wal_bytes_ready": 30751712 }, { "db_bytes_ready": 29216768, "ready_ms": 1563.417629, "settled_ms": 1587.791009, "wal_bytes_ready": 30706392 }, { "db_bytes_ready": 29229056, "ready_ms": 1554.9794219999999, "settled_ms": 1585.738646, "wal_bytes_ready": 31192552 } ], "tasks": 1691.1202130000001, "tasks_ready_ms": 1666.124599, "tasks_runs": [ 1233.8796109999998, 1225.606963, 1698.564669, 1763.1325900000002, 1742.8869169999998, 1749.9137629999998, 1691.1202130000001, 1694.1374389999999, 1700.6764329999999, 1697.830683, 1673.023744, 1673.646714, 1663.25587, 1687.4821180000001, 1683.177898 ], "tasks_samples": [ { "db_bytes_ready": 32034816, "ready_ms": 1209.133292, "settled_ms": 1233.8796109999998, "wal_bytes_ready": 34047712 }, { "db_bytes_ready": 32047104, "ready_ms": 1201.167289, "settled_ms": 1225.606963, "wal_bytes_ready": 33816992 }, { "db_bytes_ready": 32030720, "ready_ms": 1671.902401, "settled_ms": 1698.564669, "wal_bytes_ready": 33985912 }, { "db_bytes_ready": 32022528, "ready_ms": 1736.805189, "settled_ms": 1763.1325900000002, "wal_bytes_ready": 33973552 }, { "db_bytes_ready": 32034816, "ready_ms": 1717.751649, "settled_ms": 1742.8869169999998, "wal_bytes_ready": 34228992 }, { "db_bytes_ready": 32038912, "ready_ms": 1725.7055320000002, "settled_ms": 1749.9137629999998, "wal_bytes_ready": 33919992 }, { "db_bytes_ready": 32034816, "ready_ms": 1666.124599, "settled_ms": 1691.1202130000001, "wal_bytes_ready": 34006512 }, { "db_bytes_ready": 32026624, "ready_ms": 1668.227189, "settled_ms": 1694.1374389999999, "wal_bytes_ready": 34212512 }, { "db_bytes_ready": 32059392, "ready_ms": 1654.1216789999999, "settled_ms": 1700.6764329999999, "wal_bytes_ready": 34022992 }, { "db_bytes_ready": 32047104, "ready_ms": 1673.029831, "settled_ms": 1697.830683, "wal_bytes_ready": 33961192 }, { "db_bytes_ready": 32034816, "ready_ms": 1647.381677, "settled_ms": 1673.023744, "wal_bytes_ready": 33887032 }, { "db_bytes_ready": 32043008, "ready_ms": 1649.12749, "settled_ms": 1673.646714, "wal_bytes_ready": 34443232 }, { "db_bytes_ready": 32059392, "ready_ms": 1638.815343, "settled_ms": 1663.25587, "wal_bytes_ready": 34278432 }, { "db_bytes_ready": 32043008, "ready_ms": 1667.4435970000002, "settled_ms": 1687.4821180000001, "wal_bytes_ready": 33796392 }, { "db_bytes_ready": 32010240, "ready_ms": 1655.173204, "settled_ms": 1683.177898, "wal_bytes_ready": 34290792 } ] }, "describe_ms": { "pass": { "max": 0.429825, "n": 20000, "p50": 0.0029349999999999997, "p95": 0.014116, "p99": 0.035226 }, "pass_and_rows": { "max": 0.5126510000000001, "n": 20000, "p50": 0.012193, "p95": 0.033062, "p99": 0.055182999999999996 } }, "list_ms": { "anytime": { "matching": 868, "max": 2.57325, "n": 200, "p50": 1.909577, "p95": 2.127085, "p99": 2.427397 }, "anytime_by_child_tag": { "matching": 886, "max": 3.295815, "n": 200, "p50": 2.43933, "p95": 2.787623, "p99": 2.9065950000000003 }, "counts": { "max": 0.32357600000000003, "n": 200, "p50": 0.241192, "p95": 0.27255999999999997, "p99": 0.306475 }, "someday": { "matching": 822, "max": 2.2860329999999998, "n": 200, "p50": 1.913715, "p95": 2.067124, "p99": 2.228195 }, "tag": { "matching": 809, "max": 6.878045, "n": 200, "p50": 2.6232550000000003, "p95": 3.104206, "p99": 3.36366 }, "today": { "matching": 1044, "max": 2.478363, "n": 200, "p50": 2.168142, "p95": 2.330655, "p99": 2.436094 }, "today_by_priority": { "matching": 1044, "max": 2.8728320000000003, "n": 200, "p50": 2.189351, "p95": 2.426887, "p99": 2.568612 }, "untracked": { "max": 1.004032, "n": 200, "p50": 0.7245170000000001, "p95": 0.867245, "p99": 0.926836 }, "upcoming": { "matching": 1513, "max": 2.971146, "n": 200, "p50": 2.352767, "p95": 2.586225, "p99": 2.776351 } }, "notes": 10000, "tasks": 10000, "write_ms": { "first_touch": { "max": 16.421623999999998, "n": 60, "p50": 5.199131, "p95": 5.738852, "p99": 6.145403 }, "warm": { "max": 36.393468999999996, "n": 2340, "p50": 2.7506530000000002, "p95": 5.07628, "p99": 15.372829 } } } ``` Gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ```
Author
Owner

Finished at head d23e80b949. New draft PR: #760. Measured integration base: e8a99a6f. PR target: perf/idle-honest-2, now at a6b1fa14.

The measured integration base is the task’s explicitly requested e8a99a6fee. During this run, the target branch perf/idle-honest-2 advanced to a6b1fa14d2. PR #760 is a draft with conflicts against that newer head in crates/auth/src/quota.rs, crates/fsio/src/usage.rs and crates/fsio/src/usage/watch.rs. The tested source remains d23e80b9 on e8a99a6f. Newer quota retry and admission changes are outside these measurements; integration with a6b1fa14 remains follow-up work. The open-PR branch rule requires a new branch and PR for any further code update.

Quota admission and native-name regressions are fixed; all reviewer assertions remain enabled. All requested startup, cold growth, task, child-tag and idle gates pass 3/3 per size. Known open.note remains over its unchanged 15 ms budget: 100000 notes report 1: 19.793982 ms; 100000 notes report 2: 20.753939 ms; 100000 notes report 3: 18.815419 ms. This is kept visible in the server gate output.

Notes Report healthz p95 ms Cold growth % Child-tag p95 ms Idle CPU % Wakeups/s Idle RSS MB open.note p95 ms
10000 1 78.200889 6.453428 2.899438 0.000000 0.000000 36.218750 6.477991
10000 2 101.096701 6.085047 2.676665 0.000000 0.000000 36.722656 7.261425
10000 3 89.935247 6.356895 2.787623 0.000000 0.000000 37.843750 5.983108
100000 1 115.323829 4.737185 15.911452 0.000000 0.000000 97.484375 19.793982
100000 2 127.534600 4.618282 17.097791 0.000000 0.000000 93.187500 20.753939
100000 3 109.077354 5.505946 16.795405 0.000000 0.000000 96.007812 18.815419

Budgets are unchanged. Every server report recorded 9 successful internal cache drops; every task comparison recorded 30. The outer perf-run.sh drops also succeeded. Each full server report has five warm starts, three cold starts and a 300-second idle window; task comparisons use 15 alternating cold pairs. All fixture Homes and state are deleted. The failed earlier RSS report remains in comments 68984/68985. No pull request was merged and nothing was deployed.

Correctness and build gate output verbatim:

fmt --check exit=0
clippy -D warnings exit=0
release build exit=0
full workspace tests exit=0

Workspace total: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try; no #757 rerun. Full workspace output is in comments 68995–69009.

server-10000-1 gate output verbatim:

process exit=0

tasks-10000-1 gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0

server-10000-2 gate output verbatim:

process exit=0

tasks-10000-2 gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0

server-10000-3 gate output verbatim:

process exit=0

tasks-10000-3 gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0

server-100000-1 gate output verbatim:

over target (not gated yet): 100000 notes: storm.disk_written p95 50.3 > 50
over budget: 100000 notes: open.note p95 19.8 > 15
process exit=1

tasks-100000-1 gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0

server-100000-2 gate output verbatim:

over budget: 100000 notes: open.note p95 20.8 > 15
process exit=1

tasks-100000-2 gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0

server-100000-3 gate output verbatim:

over budget: 100000 notes: open.note p95 18.8 > 15
process exit=1

tasks-100000-3 gate output verbatim:

GATE tasks.list: PASS
GATE tasks.counts: PASS
GATE tasks.describe: PASS
GATE tasks.update: PASS
GATE cold.index growth <= 10%: PASS
process exit=0
Finished at head d23e80b9493b2f3da32ac5c4cd15e09695da41af. New draft PR: https://git.kayg.org/kayg/calternal/pulls/760. Measured integration base: e8a99a6f. PR target: perf/idle-honest-2, now at a6b1fa14. The measured integration base is the task’s explicitly requested e8a99a6feef86aac154083973e7f441f65d05d24. During this run, the target branch perf/idle-honest-2 advanced to a6b1fa14d21944b25fa1538615501f414ae9ddbf. PR #760 is a draft with conflicts against that newer head in crates/auth/src/quota.rs, crates/fsio/src/usage.rs and crates/fsio/src/usage/watch.rs. The tested source remains d23e80b9 on e8a99a6f. Newer quota retry and admission changes are outside these measurements; integration with a6b1fa14 remains follow-up work. The open-PR branch rule requires a new branch and PR for any further code update. Quota admission and native-name regressions are fixed; all reviewer assertions remain enabled. All requested startup, cold growth, task, child-tag and idle gates pass 3/3 per size. Known open.note remains over its unchanged 15 ms budget: 100000 notes report 1: 19.793982 ms; 100000 notes report 2: 20.753939 ms; 100000 notes report 3: 18.815419 ms. This is kept visible in the server gate output. | Notes | Report | healthz p95 ms | Cold growth % | Child-tag p95 ms | Idle CPU % | Wakeups/s | Idle RSS MB | open.note p95 ms | |---:|---:|---:|---:|---:|---:|---:|---:|---:| | 10000 | 1 | 78.200889 | 6.453428 | 2.899438 | 0.000000 | 0.000000 | 36.218750 | 6.477991 | | 10000 | 2 | 101.096701 | 6.085047 | 2.676665 | 0.000000 | 0.000000 | 36.722656 | 7.261425 | | 10000 | 3 | 89.935247 | 6.356895 | 2.787623 | 0.000000 | 0.000000 | 37.843750 | 5.983108 | | 100000 | 1 | 115.323829 | 4.737185 | 15.911452 | 0.000000 | 0.000000 | 97.484375 | 19.793982 | | 100000 | 2 | 127.534600 | 4.618282 | 17.097791 | 0.000000 | 0.000000 | 93.187500 | 20.753939 | | 100000 | 3 | 109.077354 | 5.505946 | 16.795405 | 0.000000 | 0.000000 | 96.007812 | 18.815419 | Budgets are unchanged. Every server report recorded 9 successful internal cache drops; every task comparison recorded 30. The outer perf-run.sh drops also succeeded. Each full server report has five warm starts, three cold starts and a 300-second idle window; task comparisons use 15 alternating cold pairs. All fixture Homes and state are deleted. The failed earlier RSS report remains in comments 68984/68985. No pull request was merged and nothing was deployed. Correctness and build gate output verbatim: ```text fmt --check exit=0 clippy -D warnings exit=0 release build exit=0 full workspace tests exit=0 ``` Workspace total: 1302 passed, 0 failed, 21 ignored. The Tasks abrupt-stop test passed first try; no #757 rerun. Full workspace output is in comments 68995–69009. server-10000-1 gate output verbatim: ```text process exit=0 ``` tasks-10000-1 gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ``` server-10000-2 gate output verbatim: ```text process exit=0 ``` tasks-10000-2 gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ``` server-10000-3 gate output verbatim: ```text process exit=0 ``` tasks-10000-3 gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ``` server-100000-1 gate output verbatim: ```text over target (not gated yet): 100000 notes: storm.disk_written p95 50.3 > 50 over budget: 100000 notes: open.note p95 19.8 > 15 process exit=1 ``` tasks-100000-1 gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ``` server-100000-2 gate output verbatim: ```text over budget: 100000 notes: open.note p95 20.8 > 15 process exit=1 ``` tasks-100000-2 gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ``` server-100000-3 gate output verbatim: ```text over budget: 100000 notes: open.note p95 18.8 > 15 process exit=1 ``` tasks-100000-3 gate output verbatim: ```text GATE tasks.list: PASS GATE tasks.counts: PASS GATE tasks.describe: PASS GATE tasks.update: PASS GATE cold.index growth <= 10%: PASS process exit=0 ```
Author
Owner

The measured integration base is the task’s explicitly requested e8a99a6fee. During this run, the target branch perf/idle-honest-2 advanced to a6b1fa14d2. PR #760 is a draft with conflicts against that newer head in crates/auth/src/quota.rs, crates/fsio/src/usage.rs and crates/fsio/src/usage/watch.rs. The tested source remains d23e80b9 on e8a99a6f. Newer quota retry and admission changes are outside these measurements; integration with a6b1fa14 remains follow-up work. The open-PR branch rule requires a new branch and PR for any further code update.

The final fetch found these new base commits, all after the approved e8a99a6f:

a6b1fa14 Fix quota repair retries and compact reconciliation bookkeeping
d0545088 test: independently verify quota retry lifecycle and admission
ec4f3e17 Retry unmeasured quota scopes and bound admission waits
1f7e0827 test(fsio): independently verify quota containment and recovery

Read-only merge-tree output verbatim:

merge-tree exit=1
CONFLICT (content): Merge conflict in crates/auth/src/quota.rs
CONFLICT (content): Merge conflict in crates/fsio/src/usage.rs
CONFLICT (content): Merge conflict in crates/fsio/src/usage/watch.rs

The task requested e8a99a6f, so this job preserves that measured integration and records the concurrent target movement. No additional code was pushed after opening the draft. Final head d23e80b949; draft #760. All measured results and original failed attempts remain in this thread. Fixture Homes and state are deleted; evidence is outside commits.

The measured integration base is the task’s explicitly requested e8a99a6feef86aac154083973e7f441f65d05d24. During this run, the target branch perf/idle-honest-2 advanced to a6b1fa14d21944b25fa1538615501f414ae9ddbf. PR #760 is a draft with conflicts against that newer head in crates/auth/src/quota.rs, crates/fsio/src/usage.rs and crates/fsio/src/usage/watch.rs. The tested source remains d23e80b9 on e8a99a6f. Newer quota retry and admission changes are outside these measurements; integration with a6b1fa14 remains follow-up work. The open-PR branch rule requires a new branch and PR for any further code update. The final fetch found these new base commits, all after the approved e8a99a6f: ```text a6b1fa14 Fix quota repair retries and compact reconciliation bookkeeping d0545088 test: independently verify quota retry lifecycle and admission ec4f3e17 Retry unmeasured quota scopes and bound admission waits 1f7e0827 test(fsio): independently verify quota containment and recovery ``` Read-only merge-tree output verbatim: ```text merge-tree exit=1 CONFLICT (content): Merge conflict in crates/auth/src/quota.rs CONFLICT (content): Merge conflict in crates/fsio/src/usage.rs CONFLICT (content): Merge conflict in crates/fsio/src/usage/watch.rs ``` The task requested e8a99a6f, so this job preserves that measured integration and records the concurrent target movement. No additional code was pushed after opening the draft. Final head d23e80b9493b2f3da32ac5c4cd15e09695da41af; draft https://git.kayg.org/kayg/calternal/pulls/760. All measured results and original failed attempts remain in this thread. Fixture Homes and state are deleted; evidence is outside commits.
Author
Owner

Closing per #931: cold-growth work continues in #767.

Closing per #931: cold-growth work continues in #767.
kayg closed this pull request 2026-11-04 17:37:29 +00:00
Some checks failed
CI / server (pull_request) Successful in 1m34s
CI / rust (pull_request) Failing after 21m33s
CI / web (pull_request) Failing after 43s

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kayg/calternal!755
No description provided.