molecule-core/.github/workflows
Molecule AI Core-DevOps af5406d29e
Some checks failed
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 4s
sop-tier-check / tier-check (pull_request) Failing after 4s
fix(ci): migrate canary-verify from GHCR to ECR + add POST route smoke tests
Root cause of issue #213: canary-verify.yml still used GHCR
(ghcr.io/molecule-ai/platform-tenant) while
publish-workspace-server-image.yml migrated to ECR on 2026-05-07
(commit 10e510f5). Canary smoke tests were silently testing a stale
GHCR image while actual staging/prod tenants ran the ECR build.
The POST /org/import and POST /workspaces routes were missing from
the ECR binary (likely a Docker layer-caching artefact during the
staging push window) but smoke tests passed because they never tested
the ECR image at all.

Changes:
- canary-verify.yml: migrate promote-to-latest from GHCR crane tag
  ops to the CP redeploy-fleet endpoint (same mechanism as
  redeploy-tenants-on-main.yml). The wait-for-canaries step already
  read SHA from the running tenant /health (registry-agnostic), so
  no change needed there. Pre-fix promote step used `crane tag` against
  GHCR, which was never updated after the ECR migration.
- redeploy-tenants-on-main.yml: update stale comments that reference
  GHCR to reflect ECR; replace the 30s GHCR CDN propagation wait
  with a no-op comment (ECR has no CDN cache to wait for).
- scripts/canary-smoke.sh: add POST /org/import and POST /workspaces
  smoke tests (steps 6-8). These assert HTTP 401 unauthenticated
  (proves AdminAuth enforced AND the route is compiled in — 404 would
  mean route missing from binary). GET /workspaces was already covered;
  POST was the untested gap.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-10 02:10:12 +00:00
..
auto-tag-runtime.yml fix(ci): replace gh pr CLI with Gitea v1 REST in workflows + scripts (#75 class A) 2026-05-07 15:29:26 -07:00
block-internal-paths.yml fix(ci): lowercase 'molecule-ai/' in cross-repo workflow refs 2026-05-07 01:00:10 -07:00
branch-protection-drift.yml ci(branch-protection): check-name parity gate (#144) 2026-05-07 14:42:50 -07:00
canary-staging.yml chore(canary): workflow_dispatch input keep_on_failure for log capture 2026-05-08 10:58:19 -07:00
canary-verify.yml fix(ci): migrate canary-verify from GHCR to ECR + add POST route smoke tests 2026-05-10 02:10:12 +00:00
cascade-list-drift-gate.yml
check-merge-group-trigger.yml [core-be-agent] fix(ci): replace gh api calls with Gitea-compatible alternatives 2026-05-09 23:10:07 +00:00
check-migration-collisions.yml
ci.yml [core-be-agent] fix(ci): replace gh api calls with Gitea-compatible alternatives 2026-05-09 23:10:07 +00:00
codeql.yml fix(ci): convert CodeQL workflow to no-op stub on Gitea (#156) 2026-05-07 14:26:57 -07:00
continuous-synth-e2e.yml
e2e-api.yml tech-debt: rename molecule-monorepo-net -> molecule-core-net 2026-05-09 20:51:48 +00:00
e2e-staging-canvas.yml chore(workflows): drop staging-branch triggers (Phase 3b of internal#81) 2026-05-08 13:08:51 +00:00
e2e-staging-external.yml chore(workflows): drop staging-branch triggers (Phase 3b of internal#81) 2026-05-08 13:08:51 +00:00
e2e-staging-saas.yml chore(workflows): drop staging-branch triggers (Phase 3b of internal#81) 2026-05-08 13:08:51 +00:00
e2e-staging-sanity.yml
handlers-postgres-integration.yml tech-debt: rename molecule-monorepo-net -> molecule-core-net 2026-05-09 20:51:48 +00:00
harness-replays.yml fix(ci): replace dorny/paths-filter with shell-based git diff (Gitea Actions compatibility) 2026-05-10 01:11:45 +00:00
lint-curl-status-capture.yml
pr-guards.yml fix(ci): close 3 chronic Gitea-Actions workflow flakes (closes #88) 2026-05-07 17:06:09 -07:00
promote-latest.yml
publish-canvas-image.yml
publish-runtime.yml feat(ci): port publish-runtime.yml to .gitea/workflows/ (issue #206) 2026-05-10 01:26:13 +00:00
publish-workspace-server-image.yml chore(ci): retrigger publish-workspace-server-image after ECR repo create (#173) 2026-05-07 13:54:11 -07:00
railway-pin-audit.yml
redeploy-tenants-on-main.yml fix(ci): migrate canary-verify from GHCR to ECR + add POST route smoke tests 2026-05-10 02:10:12 +00:00
redeploy-tenants-on-staging.yml chore(workflows): drop staging-branch triggers (Phase 3b of internal#81) 2026-05-08 13:08:51 +00:00
runtime-pin-compat.yml
runtime-prbuild-compat.yml
secret-pattern-drift.yml
secret-scan.yml fix(ci): lowercase 'molecule-ai/' in cross-repo workflow refs 2026-05-07 01:00:10 -07:00
sweep-aws-secrets.yml
sweep-cf-orphans.yml
sweep-cf-tunnels.yml
sweep-stale-e2e-orgs.yml
test-ops-scripts.yml