Skip to content

feat(taxonomy): Custom Behaviors Phase 5 — scoped gardening + auto-garden (LAT-760) #1930

feat(taxonomy): Custom Behaviors Phase 5 — scoped gardening + auto-garden (LAT-760)

feat(taxonomy): Custom Behaviors Phase 5 — scoped gardening + auto-garden (LAT-760) #1930

Workflow file for this run

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