docs: spec system overhaul — frontmatter + lint + AGENTS.md + EARS infra #1
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Docs lint | |
| # 트리거: docs/*.md / scripts/_doc_lint.py / hook 변경 시. 빌드/테스트와 분리. | |
| on: | |
| push: | |
| branches: [main] | |
| paths: | |
| - '**.md' | |
| - 'docs/**' | |
| - 'tests/**' | |
| - 'scripts/_doc_lint.py' | |
| - 'scripts/lint_docs.py' | |
| - 'scripts/generate_spec_trace.py' | |
| - '.claude/hooks/docs-lint.py' | |
| - '.github/workflows/docs.yml' | |
| pull_request: | |
| branches: [main] | |
| paths: | |
| - '**.md' | |
| - 'docs/**' | |
| - 'tests/**' | |
| - 'scripts/_doc_lint.py' | |
| - 'scripts/lint_docs.py' | |
| - 'scripts/generate_spec_trace.py' | |
| - '.claude/hooks/docs-lint.py' | |
| - '.github/workflows/docs.yml' | |
| workflow_dispatch: {} | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
| jobs: | |
| lint: | |
| name: Lint docs (frontmatter / pair / supersede / links) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - uses: astral-sh/setup-uv@v8.1.0 | |
| with: | |
| python-version: "3.12" | |
| # ^ typer 만 필요 (testing 그룹에 포함). full all 그룹은 CI 빌드용 — lint 는 가벼움. | |
| - run: uv pip install --system "typer>=0.12" | |
| - name: Lint docs | |
| run: python scripts/lint_docs.py docs/ | |
| - name: Verify spec trace report up to date | |
| # ^ tests/ 의 @pytest.mark.spec 변경 시 docs/traces/coverage.md 동기화 필수. | |
| run: python scripts/generate_spec_trace.py --check |