Skip to content

[DONE] 정리 4단계 PR 23 — REST 와 MIDI 스펙에서 두 말을 하던 줄 열 곳이 한 말을 하고, 그 줄을 옮긴 벡터 둘이 따라간다 #112

[DONE] 정리 4단계 PR 23 — REST 와 MIDI 스펙에서 두 말을 하던 줄 열 곳이 한 말을 하고, 그 줄을 옮긴 벡터 둘이 따라간다

[DONE] 정리 4단계 PR 23 — REST 와 MIDI 스펙에서 두 말을 하던 줄 열 곳이 한 말을 하고, 그 줄을 옮긴 벡터 둘이 따라간다 #112

Workflow file for this run

name: Docs point at files that exist
# Nothing used to watch the documentation. The 2026-08-30 addons/ → features/
# rename left eight dead paths in contract docs (rest-api.md, pfst-v2-spec.md,
# the RFC log) and nobody noticed for four days, because no grep runs on
# docs/. This one does: every relative link in every Markdown file has to
# resolve to a file in the tree. Stdlib Python, no network, seconds.
on:
pull_request:
paths:
- "**/*.md"
- ".github/scripts/check_links.py"
- ".github/workflows/docs-links.yml"
# A renamed STL, CSV, Gerber zip or image breaks a link just as a
# renamed page does; these trees are where those files live.
- "hardware/**"
- "docs/**"
- "integrations/**"
- "tools/**"
push:
branches: [main]
paths:
- "**/*.md"
- ".github/scripts/check_links.py"
concurrency:
group: docs-links-${{ github.ref }}
cancel-in-progress: true
permissions: {}
jobs:
check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.x"
- name: Relative links resolve
run: python .github/scripts/check_links.py