docs: update contact links with CTA placement (#4454) #15
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: Agent Substrate | |
| # Guards the repo-level AI-agent guidance — the files coding agents read — | |
| # so it cannot silently drift from reality: | |
| # | |
| # * `pnpm validate:agent-skills` — SKILL.md frontmatter and reference links, | |
| # the .agents/skills <-> .claude/skills compatibility symlink, required | |
| # nested AGENTS.md files, stale guidance references, and every pnpm/make/ | |
| # nox command mentioned in guidance checked against its real definition. | |
| # * `pnpm validate:skill-routing` — deterministic routing smoke test: each | |
| # skill keeps a probe asserting it is the unique top match for a | |
| # representative task, so description edits cannot silently break routing. | |
| # | |
| # These checks run nowhere else, so this workflow is their only enforcement | |
| # point. It runs on every push and PR with no path filters: the | |
| # validate:agent-skills stale-guidance walk scans every text file in the | |
| # repo, so any change can affect the result. Both scripts are | |
| # dependency-free Node programs, but the standard toolchain setup is kept | |
| # so the pnpm script wiring is exercised too. | |
| on: | |
| push: | |
| branches: [master, next] | |
| pull_request: | |
| branches: [master, next] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event_name == 'pull_request' && github.ref || github.run_id }} | |
| cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
| permissions: | |
| contents: read | |
| jobs: | |
| validate: | |
| name: Validate agent guidance | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout Code | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Setup Node.js, pnpm, Bun | |
| uses: ./.github/actions/setup-node-pnpm-bun | |
| with: | |
| # Only push runs on next save caches: PR-scoped caches are invisible | |
| # to other branches, so saving them costs post-job time and evicts | |
| # reusable default-branch caches from the 10 GB repo quota. | |
| cache-save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/next' }} | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Validate agent skills and guidance invariants | |
| run: pnpm validate:agent-skills | |
| - name: Validate skill routing | |
| run: pnpm validate:skill-routing |