feat(taxonomy): Custom Behaviors Phase 5 — scoped gardening + auto-garden (LAT-760) #1930
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: API Manifests | |
| on: | |
| pull_request: | |
| branches: | |
| - development | |
| workflow_call: | |
| inputs: | |
| ref: | |
| description: Git ref to check | |
| required: false | |
| type: string | |
| permissions: | |
| contents: read | |
| jobs: | |
| manifests: | |
| runs-on: ubuntu-latest | |
| env: | |
| NODE_ENV: test | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v7.0.0 | |
| with: | |
| ref: ${{ inputs.ref || github.sha }} | |
| - name: Install pnpm | |
| uses: pnpm/action-setup@v6 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: 25 | |
| cache: "pnpm" | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Create .env.test from example | |
| run: cp .env.example .env.test | |
| - name: Build workspace | |
| run: pnpm build | |
| - name: Regenerate OpenAPI manifest | |
| run: pnpm --filter @app/api openapi:emit | |
| - name: Fail if apps/api/openapi.json drifted | |
| run: git diff --exit-code apps/api/openapi.json | |
| - name: Regenerate MCP manifest | |
| run: pnpm --filter @app/api mcp:emit | |
| - name: Fail if apps/api/mcp.json drifted | |
| run: git diff --exit-code apps/api/mcp.json | |
| - name: Validate Fern config against the OpenAPI spec | |
| run: ./fern/invoke.sh check | |
| - name: Regenerate Fern-emitted TypeScript SDK | |
| run: pnpm generate:sdk:typescript | |
| - name: Fail if packages/sdk/typescript/src drifted | |
| run: git diff --exit-code packages/sdk/typescript/src | |
| - name: Regenerate Fern-emitted Python SDK | |
| run: pnpm generate:sdk:python | |
| - name: Fail if packages/sdk/python/src drifted | |
| run: git diff --exit-code packages/sdk/python/src | |
| - name: Regenerate Fern-emitted CLI | |
| run: pnpm generate:cli | |
| - name: Fail if packages/cli drifted | |
| run: git diff --exit-code packages/cli |