Repository navigation
Capture Fleet metrics saved sources once per operation - #2120
Merged
Merged
Conversation
2026-11-12T13:27:45Z, host thirdshift. Uncommitted work at the time of failure is included in this commit.
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Keep Fleet metrics machine choices and results consistent when saved files change
during a Console request or explicit Fleet CLI invocation.
Discovery and exact configured slots share observations while retaining their
eligibility, ordering, person isolation and slot precedence. Local metrics and
the local HTTP API keep their direct reading path. Saved formats stay compatible.
Test seams: Fleet
Captureprojections through native and counting/scriptedfilesystem adapters; Console HTTP requests and Fleet metrics CLI reads.
Closes #2090
Evidence
Execution evidence
Before: On base
5e573fe3, with the new caller regression copied into anisolated checkout:
cargo test --test console metrics::console_metrics_reuses_captured_choices_and_results_during_a_live_read -- --exact --nocaptureAfter: The same command on this branch:
cargo test --bin thirdshift logs::metrics::fleet:: -- --test-threads=3:13 passed, covering stable positive and negative observations, exact-slot
fallback after listing failure, timestamp ties and concurrent writer reloads.
cargo test --test console metrics -- --test-threads=3: 23 passed, includingFleet CLI/Console, local API, reporting, offline and retired-machine checks.
cargo test --test console a_cached_peer_snapshot_stays_with_the_person_who_read_it -- --test-threads=3:1 passed.
cargo check --lockedandcargo fmt --check: passed.CARGO_BUILD_JOBS=3 NEXTEST_TEST_THREADS=3 RUST_TEST_THREADS=3 scripts/affected-tests main:passed. All 203 Console browser tests and 4,416 Rust tests passed; 102 Rust
tests were skipped by the suite configuration. The full Rust command took
4,389.96 seconds including compilation; browser checks took 346.72 seconds.
Visual evidence
Retired-machine Metrics,
window=7d. Each pair is byte-identical.Desktop, 1440×900
Mobile, 390×844
Review coverage
Independent Standards and Spec reviews against
refs/remotes/origin/main:0 findings on each axis. Both reviewers read all seven changed files.
Changed files left unread: none. Generated-output exclusions: none.
Unaddressed findings
Standards
None.
Spec
None.
Security
None.
Security review outcome
No unaddressed introduced findings.
Merge Danger
Door: two-way
Internal refactor; reverting needs no saved-data migration.
Blast Radius: Fleet
Saved-source selection for Fleet metrics CLI reads and Console Metrics requests.
Built with codex codex-cli 0.167.1 · gpt-6.1-sol · xhigh