Add a master switch, and ship the template with sweeps off - #1
Merged
Conversation
The template was sweeping every 8 hours for the example field. Two
problems: it burns Actions minutes collecting research nobody reads, and
whatever it collects becomes the starting data of every repository
created from it — a new copy already inherited 190 items and a 29-item
dashboard.
`enabled` in config.yaml is the switch. False means scheduled sweeps do
nothing at all: no collection, no scoring, no commit. A manual dispatch
of the pipeline still runs, so a one-off sweep never needs a config edit,
and --force does the same locally.
It's read in a cheap `gate` job before any dependency install, so a
switched-off repository spends seconds rather than a full sweep. publish
and alert are gated on it too, so an off repo doesn't spin runners to
report that nothing happened. Defaults to true, so any existing config
that predates the switch keeps running.
Two knock-ons handled:
* CI's "runs end-to-end with no secrets" step would have silently
become a no-op, since the shipped config now says false. It passes
--force, so it still exercises the real path.
* The committed database and dashboard are reset to empty, for the
same inheritance reason.
Step 5 alone wasn't enough. The intro still promised it 'runs free on GitHub Actions every 8 hours' with no hint a fresh copy starts off, and the Local dev block's 'make run' would have no-opped with no explanation. Adds a note under the intro, a Pausing section covering the non-template case (leave, retuning a noisy radar), and ARGS passthrough on the run target so 'make run ARGS=--force' is real rather than aspirational — 'make run --force' would have been read by make as a target.
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.
The template is sweeping every 8 hours for the example field. Two problems, and the second is the serious one:
The switch
enabledinconfig.yaml.falsemeans scheduled sweeps do nothing at all — no collection, no scoring, no commit.A manual dispatch of the pipeline still runs, so trying a one-off sweep never needs a config edit.
--forcedoes the same locally.It's read in a cheap
gatejob before any dependency install, so a switched-off repo spends seconds rather than a full sweep.publishandalertare gated on it too, so an off repo doesn't spin runners to report that nothing happened.Defaults to
true— any config predating the switch keeps running.Two knock-ons
argus.run, which now exits early against the shipped config. It passes--forceso it still exercises the real path. Verified both ways.Setup flow
The README gains a step 5: switch it on once your sources are yours. That ordering is deliberate — a fresh copy shouldn't sweep for someone else's field before it's been configured.
40 tests pass, including that the shipped config really does have the switch off, and that a disabled run never opens the database at all.