Files
local-deep-research/docs/ci/workflow-status.md
LearningCircuit 2723331f67 chore(ci): cut workflow-status.md regen diff noise (#4066)
The auto-regenerated workflow-status.md on every version-bump PR
produced ~15 rows of churn that wasn't signal:

- Status emoji column flipped between  / · /  depending on which
  event last ran (e.g. backwards-compatibility flipped →· because
  the most recent run was a skipped workflow_call, not because it
  regressed). The live badge column to its right is the source of
  truth for current status anyway, and run history lives in GitHub
  Actions itself. Drop the column.
- Last activity buckets oscillated across this week / last week / 2
  weeks ago for healthy daily/weekly workflows. Coarsen to last 30
  days / 1-3 months ago / 3-6 months ago / long ago / never so a
  healthy workflow sits in one bucket indefinitely.

Net effect: regenerations in steady state produce zero diff. Real
signal (new stale/disabled workflows, aging past the 30d bucket)
still surfaces.
2026-05-16 13:20:21 +02:00

20 KiB
Raw Blame History

Workflow Status

Live status of every GitHub Actions workflow in this repo. Auto-generated by scripts/generate_workflow_status.py. Do not edit between the generated markers — regenerate with pdm run python scripts/generate_workflow_status.py. Anything outside the markers is preserved on regeneration.

How to read this page

  • Live badges (right column on active gates) re-render on every page view and reflect the current head-of-default-branch status from GitHub. Click one to land on that workflow's runs page. The badge is the source of truth for current status — there is intentionally no static status column, because that would flip every regeneration as the most-recent run cycles through success → skipped → in_progress.
  • Last activity uses coarse calendar buckets — last 30 days, 1-3 months ago, 3-6 months ago, long ago, never. Exact dates would change every regeneration; buckets only change when a workflow drifts, which is the signal worth seeing in version-bump diffs.
  • Disabled = a caller has the uses: line commented out, or the workflow is disabled in the GitHub UI. Stale = scheduled trigger but no successful run within 2× its cron cadence (and ≥60 days). The three top sections are the action items.
  • Reusable workflows (those triggered only by workflow_call:) show their gated run — the most recent run of their parent (release.yml, release-gate.yml, ci-gate.yml) that included them — not their own empty direct-run history.

65 workflows: 1 disabled · 1 stale · 2 manual-only · 61 active

⚠ Disabled workflows

Workflow Disabled where Last direct run
nuclei.yml release-gate.yml:177 (commented) never

⚠ Stale (scheduled but no recent successful run)

Workflow Cron Last successful run
update-precommit-hooks.yml 0 8 * * 5 never

Manual-only by design

Workflow Last manual run Trigger
check-config-docs.yml 1-3 months ago manual
sync-main-to-dev.yml 1-3 months ago manual

Release-blocking gates — daily (release-gate cron 02:00 UTC)

Workflow Last activity Trigger Live badge
backwards-compatibility.yml last 30 days workflow_call, PR, push:main, release, schedule(0 2 * * 0), manual status
bearer.yml last 30 days manual, workflow_call, schedule(0 4 * * *) status
checkov.yml last 30 days manual, workflow_call status
codeql.yml last 30 days push:main, PR, schedule(45 5 * * 0), workflow_call, manual status
container-security.yml last 30 days workflow_call, manual status
devskim.yml last 30 days manual, workflow_call, schedule(0 10 * * *) status
docker-multiarch-test.yml last 30 days workflow_call, manual status
dockle.yml last 30 days manual, workflow_call, schedule(0 10 * * 2) status
gitleaks-main.yml last 30 days workflow_call, manual status
grype.yml last 30 days workflow_call, manual status
hadolint.yml last 30 days PR, manual, workflow_call, schedule(0 9 * * 2) status
journal-data-integration.yml last 30 days workflow_call, manual, schedule(0 4 * * 1) status
npm-audit.yml last 30 days manual, workflow_call status
owasp-zap-scan.yml last 30 days workflow_call, manual status
retirejs.yml last 30 days manual, workflow_call, schedule(0 4 * * 1) status
security-headers-validation.yml last 30 days workflow_call, schedule(0 3 * * *), manual status
security-tests.yml last 30 days workflow_call, manual status
semgrep.yml last 30 days workflow_call, manual status
zizmor-security.yml last 30 days manual, workflow_call, schedule(0 9 * * 1) status

Release gates — release-time only

Workflow Last activity Trigger Live badge
check-env-vars.yml last 30 days PR, workflow_call, manual status
ci-gate.yml last 30 days workflow_call, manual status
compose-integration-test.yml last 30 days workflow_call, manual status
docker-tests.yml last 30 days PR, push:main, workflow_call, manual status
file-whitelist-check.yml last 30 days PR, workflow_call, manual status
mypy-type-check.yml last 30 days PR, workflow_call, manual status
playwright-webkit-tests.yml last 30 days workflow_call, manual, schedule(0 2 * * *) status
pre-commit.yml last 30 days PR, workflow_call, manual status
puppeteer-e2e-tests.yml last 30 days PR, workflow_call, manual, schedule(0 2 * * 0) status
responsive-ui-tests-enhanced.yml last 30 days workflow_call, manual status
security-file-write-check.yml last 30 days PR, workflow_call, manual status
validate-image-pinning.yml last 30 days PR, workflow_call, manual status
vulture-dead-code.yml last 30 days workflow_call, manual status

Scheduled (own cron)

Workflow Last activity Trigger Live badge
compose-published-smoke.yml last 30 days manual, schedule(0 5 * * 1) status
fuzz.yml last 30 days schedule(0 0 * * 0), manual, PR status
gitleaks.yml last 30 days PR, manual, schedule(0 3 * * *) status
ossf-scorecard.yml last 30 days branch_protection_rule, schedule(0 8 * * 1), manual, push:main status
osv-scanner-scheduled.yml last 30 days push:main, schedule(41 21 * * 1), manual status
osv-scanner.yml last 30 days PR, merge_group, schedule(39 12 * * 1), manual status
release-gate.yml last 30 days workflow_call, manual, schedule(0 2 * * *) status
sbom.yml last 30 days manual, schedule(0 10 * * 3), release status
update-dependencies.yml last 30 days workflow_call, manual, schedule(0 8 * * 3) status
update-npm-dependencies.yml last 30 days workflow_call, manual, schedule(0 8 * * 4) status

PR / push checks

Workflow Last activity Trigger Live badge
advanced-search-reminder.yml last 30 days PR status
ai-code-reviewer.yml last 30 days PR status
check-workflow-status.yml last 30 days PR, manual status
claude-code-review.yml last 30 days PR status
danger-zone-alert.yml last 30 days PR status
dependency-review.yml last 30 days PR, manual status
e2e-research-test.yml last 30 days PR status
label-fixed-in-dev.yml last 30 days PR status
labels-sync.yml last 30 days push:main, manual status
mcp-tests.yml last 30 days push:main,dev, PR, manual status
pr-triage.yml last 30 days PR, pull_request_review status
release.yml last 30 days push:main, manual status
version_check.yml last 30 days push:main, manual status
welcome-first-time.yml last 30 days PR-target status

Repository-dispatch publishers

Workflow Last activity Trigger Live badge
docker-publish.yml last 30 days repo_dispatch status
prerelease-docker.yml last 30 days repo_dispatch status
publish.yml last 30 days repo_dispatch status

Other

Workflow Last activity Trigger Live badge
issue-research.yml last 30 days issues status
ldr-research-reusable.yml never workflow_call status