Repository navigation
feat(research): add --source off to the soak recorder - #207
Merged
Merged
Conversation
With --source off the live service runs without a push source (push=False, like ssc watch --source poll): the arbiter's leader is poll for the whole run and the recorder's fallback rule drives the REST reads at the configured rate. No credential is read and no browser is opened for push. leader.jsonl starts with leader poll and reason push_off; summary.json, requests.jsonl and fallback.jsonl keep their shape. --kill-* is refused with --source off.
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.
Adds
--source offtoscripts/soak_live.py: no push source at all.requested_source="poll"(the service'spush=Falsepath, asssc watch --source poll), so the arbiter's leader ispollfor the whole run and the recorder's fallback rule (joined every 60 s, others backlog, skips counted,--rate-schedulephases) drives the REST reads at the configured rate.leader.jsonlstart row:leader: poll,reason: push_off; no switches follow.summary.json,requests.jsonlandfallback.jsonlkeep their shape (fallback_time_share1.0,notes[0]explains source off).--kill-every/--kill-at(and, as before,--compare-credential-sports) are refused with--source off;Soak.killreturns False.Soaktakes optionalwall/monoclocks andbegin()(the start records) is split fromstart()(threads), for the fake-clock test.Tests (offline; no SofaScore, no browser):
tests/test_soak_live.py+tests/test_research_privacy.py: 49 passed; ruff check clean. No shared code touched.