Woodpecker blocks from_secret on pull_request events. Move turbo
remote cache config to repository-level env vars in Woodpecker UI
instead. Pipeline runs with local cache if vars aren't set.
Fixes pipeline #163 secret error.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Each step was re-running pnpm install independently, and all quality
steps (typecheck, lint, format, test) ran in parallel. On merge commits
with more accumulated code this pushed the CI runner over its memory
limit (exit code 254 = OOM kill).
Fix:
- install once, share node_modules via Woodpecker workspace volume
- sequential execution: install → typecheck → lint → format → test → build
- corepack enable in each step (fresh container) but no redundant install