-
-
Notifications
You must be signed in to change notification settings - Fork 217
47 lines (38 loc) · 1.47 KB
/
docs-sync-check.yml
File metadata and controls
47 lines (38 loc) · 1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
name: Docs Sync Check
on:
pull_request:
paths:
- 'core/src/BaseExchange.ts'
- 'core/src/types.ts'
- 'core/src/server/app.ts'
- 'core/scripts/generate-openapi.js'
- 'scripts/generate-mintlify-docs.js'
- 'scripts/generate-llms.js'
- 'docs/**'
jobs:
check-docs-sync:
name: Verify docs are in sync with core
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm install
- name: Build core (capability map needs dist/)
run: npm run build --workspace=pmxt-core
- name: Generate OpenAPI (includes hosted docs spec)
run: npm run generate:openapi --workspace=pmxt-core
- name: Generate Mintlify docs (venues + navigation)
run: npm run generate:mintlify --workspace=pmxt-core
- name: Generate llms.txt
run: npm run docs:llms
- name: Check for uncommitted docs changes
run: |
# Exclude hosted-owned files — those are managed by hosted-pmxt's sync workflow.
if ! git diff --exit-code -- docs/ ':!docs/api-reference/openapi-hosted.json'; then
echo "::error::Docs are out of sync with core. Run 'npm run generate:openapi --workspace=pmxt-core && npm run generate:mintlify --workspace=pmxt-core && npm run docs:llms' and commit the result."
exit 1
fi
echo "Docs are in sync."