fix(ci): move ci.yml to .forgejo/workflows to trigger pull_request #10
Labels
No labels
bug
performance
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
slaid098/slaid098-dev#10
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Контекст
В PR #6 deploy.yml перенесён из
.github/workflows/в.forgejo/workflows/(Forgejo-native каталог). При этомci.ymlостался в.github/workflows/ci.yml. После этого CI перестал триггериться наpull_request:POST /actions/workflows/ci.yml/dispatches→ 404 «workflow not found» — Forgejo не видитci.ymlкак зарегистрированный workflow.Гипотеза: Forgejo перестал сканировать
.github/workflows/после появления.forgejo/workflows/(либо не поддерживает смешанный режим, либо требуется явная конфигурация).deploy.ymlв.forgejo/workflows/работает (runs 106-119),ci.ymlв.github/workflows/— нет.Задача
ci.ymlиз.github/workflows/ci.ymlв.forgejo/workflows/ci.yml(git mv)..github/workflows/каталог (если больше нет файлов)..github/каталог пуст — удалить если да (зависимости от него нет, см. «Влияние»).pull_request..github/workflows/всё же поддерживается Forgejo (конфиг/дока) — альтернатива: оставитьci.ymlв.github/и найти причину 404 на dispatch (возможно workflow надо «активировать» в web UI Forgejo: Actions → Enable). В этом случае — записать в memory процедуру активации.Контракты
ci.ymlтриггерится наpull_request(branches: [main]) иpush(branches: [main]) — как раньше.deploy.ymlне трогается (работает в.forgejo/workflows/).runs-on: ubuntu-latest,node-version: "22",cache: "npm"— сохраняются.Инварианты
npm run buildв CI — единственный детектор клиент/серверных границ (node:fs в клиентском компоненте, hydration mismatches). Локальные lint/typecheck/test/knip НЕ ловят. Без CI-билда такие баги проходят.pipeline-statusoracle использует presence CI checks для вердикта. Без CI — AMBIGUOUS, merge по review APPROVE без quality-gate.Граничные случаи
pushна main (после merge PR) — должен триггерить и ci.yml (quality), и deploy.yml (deploy). Проверить порядок (ci → deploy или параллельно)..github/остался с другими файлами (dependabot.yml удалён в PR #6 — проверить) — не удалять каталог, толькоworkflows/.Влияние на связанные компоненты
.forgejo/workflows/deploy.yml— НЕ трогается.pipeline-statusoracle — после фикса перестанет возвращать AMBIGUOUS на PR (CI checks будут presence).run-pipelineskill — после фикса CI-фаза будет детерминированной (ждать CI checks). Сейчас fallback: merge по review APPROVE без CI.project-statusoracle (infra check) — проверяетci.ymlналичие; путь в чеке обновить если хардкод.github/workflows/.slaid098-dev-002.md— запись про «ci.yml в.github/не триггерится» (добавить после фикса).Вне scope
Критерии приемки
ci.ymlперенесён в.forgejo/workflows/ci.yml(или активирован в UI если.github/поддерживается).pull_request— run виден в/actions/runs, event=pull_request, status=success (или expected failure если код-баг).POST /actions/workflows/ci.yml/dispatches→ 204 (workflow найден).pipeline-statusна новом PR → CI ✅ (не AMBIGUOUS)..github/каталог пуст или удалён (если нет других файлов).