github source

github.protection

fail

Get branch protection

Requires owner, repo, and branch. Keep queries repository-scoped; fan out across repos client-side when you need broader coverage.

owner, repo, branch captured 2026-08-31 07:44:06Zmedian 31074 ms
Verdict: FALSE

All variants failed: 6 errors, 0 successful.

What to do

GitHub returned 429
upstream.rate_limit

Personal tokens get 60 req/hr unauthenticated and 5000/hr authenticated. App tokens get 5000/hr.

Wait the retry window (60–1300s) and re-run
GitHub returned 429
upstream.rate_limit

Personal tokens get 60 req/hr unauthenticated and 5000/hr authenticated. App tokens get 5000/hr.

Use a token with higher rate-limit budget (GH Apps get 5000/hr vs personal 60/hr)
GitHub returned 429
upstream.rate_limit

Personal tokens get 60 req/hr unauthenticated and 5000/hr authenticated. App tokens get 5000/hr.

Reduce --runs to 1 to lower total request volume
Retry with alternate repos
retry-strategy

If the failure is 404 on `anomalyco/opencode`, try `sst/opencode` or `octocat/Hello-World`. The retry script does this automatically.

python3 scripts/retry_batch.py --source github --only-category <category>
rendering…

Summary

VariantTrialsMinMedianMaxRow countsErrors
minimal229360 ms29702 ms30045 ms[0, 0]2
realistic230434 ms31074 ms31715 ms[0, 0]2
edge230588 ms33289 ms35990 ms[0, 0]2

Latency per trial

minimalmedian 29702ms
t130045mst229360ms
scale: 0–30045 ms
realisticmedian 31074ms
t131715mst230434ms
scale: 0–31715 ms
edgemedian 33289ms
t130588mst235990ms
scale: 0–35990 ms

Probe variants — every command + output

minimal2 trials
min 29360ms · median 29702ms · max 30045ms · rows 0,0

smallest valid query

Command
SELECT * FROM github.protection WHERE owner = 'anomalyco' AND repo = 'opencode' AND branch = 'main' LIMIT 1
Trials + output
trial 1·30045ms·rows 0isError=true
Error
Error: Source rate limit exceeded (429)
Detail: rate limit exceeded; retry after 228s [GET] https://api.github.com/repos/anomalyco/opencode/branches/main/protection
Hint: The upstream API is rate-limiting requests. Wait briefly and retry.
trial 2·29360ms·rows 0isError=true
Error
Error: Source rate limit exceeded (429)
Detail: rate limit exceeded; retry after 198s [GET] https://api.github.com/repos/anomalyco/opencode/branches/main/protection
Hint: The upstream API is rate-limiting requests. Wait briefly and retry.
realistic2 trials
min 30434ms · median 31074ms · max 31715ms · rows 0,0

typical user query

Command
SELECT * FROM github.protection WHERE owner = 'anomalyco' AND repo = 'opencode' AND branch = 'main' LIMIT 25
Trials + output
trial 1·31715ms·rows 0isError=true
Error
Error: Source rate limit exceeded (429)
Detail: rate limit exceeded; retry after 167s [GET] https://api.github.com/repos/anomalyco/opencode/branches/main/protection
Hint: The upstream API is rate-limiting requests. Wait briefly and retry.
trial 2·30434ms·rows 0isError=true
Error
Error: Source rate limit exceeded (429)
Detail: rate limit exceeded; retry after 136s [GET] https://api.github.com/repos/anomalyco/opencode/branches/main/protection
Hint: The upstream API is rate-limiting requests. Wait briefly and retry.
edge2 trials
min 30588ms · median 33289ms · max 35990ms · rows 0,0

edge: larger limit

Command
SELECT * FROM github.protection WHERE owner = 'anomalyco' AND repo = 'opencode' AND branch = 'main' LIMIT 200
Trials + output
trial 1·30588ms·rows 0isError=true
Error
Error: Source rate limit exceeded (429)
Detail: rate limit exceeded; retry after 105s [GET] https://api.github.com/repos/anomalyco/opencode/branches/main/protection
Hint: The upstream API is rate-limiting requests. Wait briefly and retry.
trial 2·35990ms·rows 0isError=true
Error
Error: Source rate limit exceeded (429)
Detail: rate limit exceeded; retry after 69s [GET] https://api.github.com/repos/anomalyco/opencode/branches/main/protection
Hint: The upstream API is rate-limiting requests. Wait briefly and retry.

All returned rowsacross all non-errored trials · filterable · paginated

0 rows stored · 0 returned · page 1/1
No rows captured. Trials either returned isError=true (errors shown above) or the probe runner didn't capture full output rows.

Trial comparison

Variant / comboTrial #LatencyRowsStatusFirst key returned
minimalt130045ms0error
minimalt229360ms0error
realistict131715ms0error
realistict230434ms0error
edget130588ms0error
edget235990ms0error
Probed by bld-dabqr1nqj5pc73dgn3h0-676t6 at 2026-08-31T07:44:06Z
JSON record: reports/github/tables/protection.json
first_run_at: 2026-08-31T07:44:06Z
last_retried_at: 2026-08-31T07:44:06Z
retry_count: 0
View version history →