Skip to content

perf(scheduler): index soft-deleted schedules for the cleaning daemon #30495

perf(scheduler): index soft-deleted schedules for the cleaning daemon

perf(scheduler): index soft-deleted schedules for the cleaning daemon #30495

Workflow file for this run

name: Yaml Validation
on:
push:
branches:
- master
- staging/**
pull_request:
merge_group:
concurrency:
group: validation-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
should-run:
runs-on: ubuntu-latest
outputs:
should_skip: ${{ steps.check.outputs.should_skip }}
steps:
- uses: actions/checkout@v4
- uses: dorny/paths-filter@v4
id: filter
with:
predicate-quantifier: 'some'
filters: |
docs:
- 'docs/**'
- 'scripts/docs-generate-llms.ts'
- 'package.json'
- 'packages/providers/providers.yaml'
- 'packages/providers/providers.scopes.yaml'
- name: Determine if should skip
id: check
run: |
# Run on PRs only if docs, provider metadata, or docs generation tooling changed
# Always run on merge queue
# Always run on direct pushes to master (not merge queue bot)
IS_PR="${{ github.event_name == 'pull_request' }}"
IS_MERGE_QUEUE="${{ github.event_name == 'merge_group' }}"
IS_DIRECT_PUSH_TO_MASTER="${{ github.event_name == 'push' && github.ref == 'refs/heads/master' && github.actor != 'github-merge-queue[bot]' }}"
HAS_DOCS_CHANGES="${{ steps.filter.outputs.docs }}"
SHOULD_SKIP="true"
# Always run on merge queue and direct push to master
if [[ "$IS_MERGE_QUEUE" == "true" || "$IS_DIRECT_PUSH_TO_MASTER" == "true" ]]; then
SHOULD_SKIP="false"
# Run on PR only if docs, provider metadata, or docs generation tooling changed
elif [[ "$IS_PR" == "true" && "$HAS_DOCS_CHANGES" == "true" ]]; then
SHOULD_SKIP="false"
fi
echo "should_skip=$SHOULD_SKIP" >> $GITHUB_OUTPUT
yaml_validation_job:
needs: should-run
runs-on: ubuntu-latest
steps:
- name: Checkout
if: needs.should-run.outputs.should_skip != 'true'
uses: actions/checkout@v4
with:
fetch-depth: '0'
repository: ${{ github.event.pull_request.head.repo.full_name || github.repository }}
ref: ${{ github.head_ref || github.ref }}
token: ${{ secrets.GITHUB_TOKEN }}
- uses: ./.github/actions/setup-node
if: needs.should-run.outputs.should_skip != 'true'
with:
registry-url: 'https://registry.npmjs.org'
- run: npm ci
if: needs.should-run.outputs.should_skip != 'true'
- name: Update LLM indexes if stale
if: needs.should-run.outputs.should_skip != 'true' && github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository
env:
HEAD_REF: ${{ github.head_ref }}
run: |
npm run docs:generate:llms
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
if git diff --quiet docs/llms.txt docs/llms-full.txt docs/api-catalog.txt; then
echo "No changes to commit."
exit 0
fi
git add docs/llms.txt docs/llms-full.txt docs/api-catalog.txt
git commit -m "chore(docs): regenerate LLM indexes"
git push origin "HEAD:${HEAD_REF}"
- name: Ensure LLM indexes are up to date
if: needs.should-run.outputs.should_skip != 'true' && github.event_name != 'pull_request'
run: |
npm run docs:generate:llms
git diff --exit-code docs/llms.txt docs/llms-full.txt docs/api-catalog.txt
- name: Validate YAML
if: needs.should-run.outputs.should_skip != 'true'
run: npm run test:providers
- name: Validate OpenAPI
if: needs.should-run.outputs.should_skip != 'true'
run: npm run test:openapi
- name: Ensure there are no broken mintlify links
if: needs.should-run.outputs.should_skip != 'true'
run: |
npm install -g mintlify
cd docs
broken_links_output=$(mintlify broken-links 2>&1) || true
if ! echo "$broken_links_output" | grep -q "no broken links found"; then
echo "$broken_links_output"
exit 1
fi