aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/distribution.yml
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-09-01 14:48:45 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-09-01 14:48:45 +0300
commit8a6d697308162874a236c84aac0b0f8c7ac01f83 (patch)
treeed7dc7e8c6f50d66bde721fae78576aede929f66 /.github/workflows/distribution.yml
parentb54a78aa510b87d1e3b56c619b72eaeb59e4a2a1 (diff)
refactor: separate website presentation from runtime
Diffstat (limited to '.github/workflows/distribution.yml')
-rw-r--r--.github/workflows/distribution.yml82
1 files changed, 82 insertions, 0 deletions
diff --git a/.github/workflows/distribution.yml b/.github/workflows/distribution.yml
new file mode 100644
index 00000000..7062dc36
--- /dev/null
+++ b/.github/workflows/distribution.yml
@@ -0,0 +1,82 @@
+name: Distribution contract
+
+on:
+ pull_request:
+ paths:
+ - ".github/workflows/distribution.yml"
+ - "distribution/**"
+ - "docs/next/website/**"
+ - "docs/preview/**"
+ - "docs/versions/**"
+ - "scripts/agent_detection_manifest_check.py"
+ - "scripts/config_reference_check.py"
+ - "scripts/docs/**"
+ - "scripts/docs_translation_parity.py"
+ - "scripts/preview.py"
+ - "scripts/test_agent_detection_manifest_check.py"
+ - "scripts/test_config_reference_check.py"
+ - "scripts/test_docs_translation_parity.py"
+ - "scripts/test_preview.py"
+ - "src/detect/manifest_update.rs"
+ - "src/detect/manifests/**"
+ push:
+ branches: [master]
+ paths:
+ - ".github/workflows/distribution.yml"
+ - "distribution/**"
+ - "docs/next/website/**"
+ - "docs/preview/**"
+ - "docs/versions/**"
+ - "scripts/agent_detection_manifest_check.py"
+ - "scripts/config_reference_check.py"
+ - "scripts/docs/**"
+ - "scripts/docs_translation_parity.py"
+ - "scripts/preview.py"
+ - "scripts/test_agent_detection_manifest_check.py"
+ - "scripts/test_config_reference_check.py"
+ - "scripts/test_docs_translation_parity.py"
+ - "scripts/test_preview.py"
+ - "src/detect/manifest_update.rs"
+ - "src/detect/manifests/**"
+
+permissions:
+ contents: read
+
+concurrency:
+ group: distribution-${{ github.event.pull_request.number || github.ref }}
+ cancel-in-progress: true
+
+jobs:
+ validate:
+ runs-on: ubuntu-latest
+ timeout-minutes: 10
+ steps:
+ - name: Checkout
+ uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
+ with:
+ fetch-depth: 0
+ persist-credentials: false
+
+ - name: Install Bun
+ uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
+ with:
+ bun-version: 1.3.14
+
+ - name: Test documentation lifecycle
+ run: bun test scripts/docs/*.test.ts
+
+ - name: Validate published contract
+ run: |
+ python3 scripts/agent_detection_manifest_check.py --require-published
+ python3 scripts/config_reference_check.py
+ python3 scripts/docs_translation_parity.py --docs-root docs/next/website/src/content/docs
+ node scripts/docs/versions.mjs check
+ node scripts/docs/preview.mjs check
+
+ - name: Test contract tooling
+ run: |
+ python3 -m unittest \
+ scripts.test_agent_detection_manifest_check \
+ scripts.test_config_reference_check \
+ scripts.test_docs_translation_parity \
+ scripts.test_preview