Commit Graph
12 Commits
Author SHA1 Message Date
Casually9790 b2e3ddc095 add exception 2026-11-05 15:57:39 +01:00
Casually9790 27c02b82ae added the_cure 2026-11-05 15:45:18 +01:00
Casually9790 09849d0ef6 added filter to decide what challenges to include 2026-11-05 15:42:52 +01:00
Casually9790 4fac6ed86d do not leak flags 2026-10-20 20:33:23 +02:00
Casually9790 f62c95570e added repo link 2026-10-20 19:44:35 +02:00
Casually9790andClaude Opus 5.5 e00f40eaf4 Split ctf_status.py into a tracker package, config from .env only
ctf_status.py is now just the command line; the work lives in tracker/.
The rules that decide whether a challenge is believed are in
tracker/checks.py, one function per rule, listed in README_CHECKS and
REPO_CHECKS. Output is unchanged.

Read the config from .env only (ctf_status.env.example -> .env.example),
let single_run_lock() hold its own lock files, and rewrite the README as
a short overview of what the repo does and how to run it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 19:40:24 +02:00
Casually9790andClaude Opus 5.5 4c6cb21cb8 Block Testing Ready+ challenges whose repo does not back up the status
Anyone can set the README status, and several challenges imported from
Nextcloud claimed Testing Ready with an untouched description.yml. For
every challenge claiming Testing Ready or beyond, now also read the repo
tree and description.yml, and block it if description.yml is missing or
still the template, its category disagrees with the README, the flag is
not h4tum{...}, a dynamic flag reaches no container, a deploy_dir or its
Dockerfile is missing, or there is no solve.py.

Blocked challenges keep their claimed status in the counts but are left
out of "Ready for infra testing" and challs.txt, and listed with the
reason in the terminal and the HedgeDoc note. Adds a PyYAML dependency.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 19:23:46 +02:00
Casually9790andClaude Opus 5.5 ec2f444ef3 Commit challs.txt once a day at 04:00, separate from the HedgeDoc refresh
The 30-minute timer now only updates the HedgeDoc note; a new
ctf-challs.timer runs --challs daily at 04:00. Locks are per target so
the two runs can overlap without one skipping.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 17:47:57 +02:00
Casually9790 cb5184a55d also use .env 2026-10-20 17:11:31 +02:00
Casually9790 e5862e8229 add chall tracker to deployment 2026-10-20 16:57:06 +02:00
Casually9790andClaude Opus 5.5 e8a04fe415 Source challenge status from GitLab instead of Nextcloud
Read the README.md of every repo in the GitLab challenges group via the
REST API and rework the HedgeDoc note for project tracking: challenges
ready for infra testing first, then status by category and a
category x difficulty grid. Free-text status/difficulty/category values
are normalised; untouched templates and repos scheduled for deletion
are left out of the counts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-20 16:12:35 +02:00
Casually9790 7c546ab673 added nextloud tracker 2026-08-30 14:25:56 +02:00