molecule-ai-status/.github/workflows-disabled
claude-ceo-assistant c3550f5e16 feat(ci): replace upptime with Gitea-native uptime probe (closes #2)
Combined transition PR — does the full upptime → Gitea-native cron
swap in one place, vs two separate PRs that would land in interleaved
state.

Why upptime had to go
- All 5 upptime workflows call api.github.com for releases lookup,
  issue management, and result commits.
- Post the 2026-05-06 GitHub org suspension, no token in our org
  authenticates against api.github.com — every scheduled run fails
  with HTTP 401 "Bad credentials". Run #70 is the most recent
  example; the failure mode has been continuous since the suspension.

What this PR does
- Moves all 5 upptime workflows from .github/workflows/ to
  .github/workflows-disabled/. Gitea Actions does not scan that
  directory, so they stop scheduling immediately on merge.
- Adds .github/workflows-disabled/README.md explaining the move +
  linking #2 + linking the replacement.
- Adds a single new .github/workflows/uptime-probe.yml that runs the
  new Gitea-native probe (https://git.moleculesai.app/molecule-ai/
  molecule-ai-uptime-probe) on a 5-minute cadence and commits per-site
  JSONL history to history/.

Why a single new workflow vs the upptime decomposition
- Each upptime workflow ran a different command: argument
  (graphs / response-time / static-site / summary / uptime). The
  decomposition existed because each command produced a different
  artifact in upptime's model.
- Our model: probe emits raw probe results only. Status page (Vercel,
  separate PR) reads those JSONL files and renders graphs/summaries
  itself. One concern per tool, one workflow.

History migration: out of scope. Existing history/ JSON files (one
per site) stay untouched; the new probe writes a new
history/<slug>.jsonl alongside. Whether to back-fill or archive the
old format is a separate decision tracked in the issue body.

Status page rebuild: out of scope. Vercel app reading JSONL is
follow-up — first we want to see real probe data flowing for ~24h.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-10 06:39:08 +00:00
..
README.md feat(ci): replace upptime with Gitea-native uptime probe (closes #2) 2026-05-10 06:39:08 +00:00

Disabled upptime workflows

These five workflows (graphs.yml, response-time.yml, static-site.yml, summary.yml, uptime.yml) are upptime-driven and call api.github.com for releases lookup, issue management, and result commits.

Post the 2026-05-06 GitHub org suspension, no token in our org authenticates against api.github.com, so every scheduled run failed with HTTP 401 "Bad credentials". See molecule-ai-status#2 for full diagnosis + the replacement plan.

Workflows here will not be re-enabled — they're moved to workflows-disabled/ so the failed-run noise stops while the replacement (Gitea-native uptime probe at molecule-ai/molecule-ai-uptime-probe) is built. The new probe runs under .github/workflows/uptime-probe.yml.

Delete this directory after the replacement has run for ~7 days clean and the existing history is either migrated or marked archived.

Tracked: molecule-ai-status#2