Submits jobs via GraphQL submit, polls for status, streams per-task
logs from /query/log/ (the path that bypasses sourcehut's anti-bot
proxy). Workflows opt in via tack.sourcehut.manifest; tack injects
TACK_* env vars into the manifest before submission.
Signed-off-by: Jes Olson j3s@c3f.net
apologies if the LLM comments are a little excessive -- i didn't have time to clean them up fully. i reviewed & tested this code, you can see it in action here: https://tangled.org/j3s.sh/testy
and here is an example of a resulting sr.ht build: https://builds.sr.ht/~capsul/job/1749924