mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-08-31 10:46:57 +00:00
Rames' review on #2978. Two pages left the sidebar without a redirect and without being deleted, so they survived only as direct URLs: `docs/changelog.mdx` and `docs/weekly-updates.mdx`. Not deliberate, and the stack says so — #2979 upgrades `weekly-updates.mdx`, importing DocsVideo and converting four raw <video> tags. You do not invest in a page you meant to retire, and it carries `rss: true`, so it is a subscribable feed. `product-updates.mdx`, which this stack adds to both the nav and the footer, links to `/changelog` three times and `/weekly-updates` once. One of those is advice to read the release archive before upgrading a production workflow. Both are back in the Explore group next to Product updates, which is where a reader looking for "what changed" would go. Worth naming why the verification missed it: the checker walks navigation → file, which is why it correctly reported zero dangling entries. The file → navigation direction — a page that exists, is not in the sidebar, and has no redirect — was never checked, and that is exactly where these two sat. `--check-redirects` on the existing `mint broken-links` step closes the adjacent gap: it resolves every redirect destination, so a future restructure cannot leave a redirect pointing at a page it removed. It does not catch the orphan case above. Also retargets `/guides/pipeline`. It pointed at `/concepts`, which explains how a project is put together; the retired page was a seven-step process. `/workflows` is the closer intent. The old step 3, "Strategy & Messaging", has no successor anywhere in the docs — worth deciding deliberately rather than routing around.
55 lines
1.4 KiB
YAML
55 lines
1.4 KiB
YAML
name: Docs
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
# Suppress hyperframes CLI telemetry from HeyGen's own CI runs.
|
|
# External users' CI continues to emit telemetry unless they set this themselves.
|
|
env:
|
|
HYPERFRAMES_NO_TELEMETRY: "1"
|
|
|
|
on:
|
|
pull_request:
|
|
branches: [main]
|
|
paths:
|
|
- "docs/**"
|
|
- "DOCS_GUIDELINES.md"
|
|
- "packages/core/schemas/**"
|
|
- "scripts/sync-schemas.ts"
|
|
push:
|
|
branches: [main]
|
|
paths:
|
|
- "docs/**"
|
|
- "DOCS_GUIDELINES.md"
|
|
- "packages/core/schemas/**"
|
|
- "scripts/sync-schemas.ts"
|
|
|
|
concurrency:
|
|
group: docs-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
validate:
|
|
name: Validate docs
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 5
|
|
steps:
|
|
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
|
|
|
|
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
|
|
with:
|
|
node-version: 22
|
|
|
|
- name: Check schema mirror (core → docs)
|
|
run: npx tsx scripts/sync-schemas.ts --check
|
|
|
|
- name: Validate build
|
|
working-directory: docs
|
|
run: npx mint validate
|
|
|
|
- name: Check broken links
|
|
working-directory: docs
|
|
# --check-redirects also resolves every redirect destination, so a
|
|
# restructure cannot leave a redirect pointing at a page it removed.
|
|
run: npx mint broken-links --check-redirects
|