CI workflow: lint, typecheck, unit tests, build on every PR #7
Labels
No Label
area:auth
area:docs
area:export
area:ops
area:storage
area:supply-chain
auth
backend
blocked
collab
deployment
docs
effort:L
effort:M
effort:S
frontend
plugins
qa
vs-nfd
vs-nfd:blocker
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: stwaidele/dorfteich#7
Loading…
Reference in New Issue
Block a user
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?
Context
ADR 0014: PRs must be objectively green before merge; this is the first pipeline stage.
Scope
Create the Gitea Actions workflow
.gitea/workflows/ci.ymlrunning on pull_request and push to main: pnpm install (cached),lint,typecheck,test,i18n:check,build, and Docker image builds (no push on PRs). Configure the repo (documented for the repo owner) to require the workflow for merging.Acceptance criteria
Technical notes
Dependencies
Depends on #1, #5, #6.
Size: ~1 day
Conventions: English code/comments, clear human-readable code, no hard-coded UI strings (ADR 0012, add
deanden), permission checks only via the shared guard (docs/architecture/permissions.md). Read the referenced ADRs before starting.Implementation landed in
9aa7b14(.gitea/workflows/ci.yml): pnpm install with cache, workspace build, lint, typecheck, tests, i18n key parity, and build-only docker images for both Dockerfiles.Still open: live verification of the red/green PR gate — requires the act_runner from #9 to be registered. Once the runner is online: open a throwaway PR with a failing test, confirm the red check blocks merging, then fix and confirm green.
Verified. Push pipeline runs green on main (commit
61da1cc: all six statuses success). Red-gate proof: PR #97 with a deliberately broken test went red within 40s; branch protection onmainnow requires the two CI contexts for PR merges (direct pushes whitelisted for stwaidele and fable-5 per the solo+agent workflow). The temporary PR was closed unmerged and its branch deleted.