Web Docs Client CI/CD Staging
Overview
Staging runs only through the Staging Orchestrator on pull requests targeting main. The orchestrator detects affected packages (Turbo build task vs origin/main); when @kartuli/web-docs-client is affected, it calls this workflow.
Workflow file: .github/workflows/staging-w-tool-web-docs-client.yml
Triggers
- workflow_call from the Staging Orchestrator when
@kartuli/web-docs-clientis in the affected build set (Turbobuildaffected by the PR vsorigin/main). - workflow_dispatch (manual run).
Paths that can affect @kartuli/web-docs-client (and thus cause the orchestrator to invoke this workflow) include: docs/**, tools/web-docs-client/**, pnpm-lock.yaml, pnpm-workspace.yaml, package.json, turbo.json, and related config.
Pipeline Steps
Single job: validate-build-and-quality
- Checkout repository
- CI setup Node (
.github/actions/ci-setup-node) - Validate monorepo package for
web-docs-client(.github/actions/ci-validate-monorepo-package) - Generate LLM bundle:
node tools/web-docs-client/scripts/generate-llm-bundle.js - Build:
pnpm turbo run build --filter=@kartuli/web-docs-client(broken links in docs are caught here; the build fails if any non-ignored link is dead). - Start preview server in the background and wait until it is ready (readiness check:
http://localhost:4173/kartuli/) - Setup Playwright (
.github/actions/ci-setup-playwright) - Run E2E:
pnpm --filter @kartuli/e2e exec playwright test tests/web-docs-client(BASE_URL:http://localhost:4173/kartuli) - On failure: upload E2E artifacts (
tools/e2e/test-results/) with 3-day retention
Staging does not run the “copy LLM bundle to built assets” step or deploy; it validates build and runs smoke E2E against the preview server.
Failure Handling
- Inspect the workflow run and job logs in GitHub Actions.
- Fix the failing step (e.g. docs, scripts, dependencies, or E2E tests) and push or re-run the workflow.