a11oy / .github /workflows /operational.yml
betterwithage's picture
sync(space): full source mirror — resolve all GitHub<->Space drift (CTO)
a6a5d8e verified
Raw
History Blame
3.02 kB
name: Operational Validation
# Runtime gate for the non-doc operational surfaces: receipt chaining and
# UDS payload manifest/attestation generation.
on:
push:
branches: [main]
paths:
- 'artifacts/a11oy-uds/**'
- 'deploy/**'
- 'packages/receipt-substrate/**'
- 'packages/perception-loop/**'
- 'packages/sequence-pipeline/**'
- 'packages/sparse-attention-kit/**'
- 'huggingface/**'
- 'docs/huggingface.md'
- 'docs/INVESTOR_DEMO.md'
- 'docs/WARHACKER_UDS_PROOF_POINT.md'
- 'docs/ecosystem-readiness-report.json'
- 'scripts/*.py'
- 'scripts/validate-operational.sh'
- 'scripts/release/lib/**'
- '.github/workflows/operational.yml'
pull_request:
branches: [main]
paths:
- 'artifacts/a11oy-uds/**'
- 'deploy/**'
- 'packages/receipt-substrate/**'
- 'packages/perception-loop/**'
- 'packages/sequence-pipeline/**'
- 'packages/sparse-attention-kit/**'
- 'huggingface/**'
- 'docs/huggingface.md'
- 'docs/INVESTOR_DEMO.md'
- 'docs/WARHACKER_UDS_PROOF_POINT.md'
- 'docs/ecosystem-readiness-report.json'
- 'scripts/*.py'
- 'scripts/validate-operational.sh'
- 'scripts/release/lib/**'
- '.github/workflows/operational.yml'
permissions:
contents: read
concurrency:
group: operational-${{ github.ref }}
cancel-in-progress: true
jobs:
operational:
name: Receipt + UDS validation
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@9af89fc71515a100421586dfdb3dc9c984fbf411 # v2.19.4
with:
egress-policy: audit
- name: Checkout repository
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v4
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@fc06bc1257f339d1d5d8b3a19a8cae5388b55320 # v4
with:
version: 10.33.3
- name: Setup Node.js
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: '22'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Validate operational surfaces
run: |
bash scripts/validate-operational.sh
python3 -m py_compile scripts/prepare_huggingface_payload.py scripts/publish_huggingface_payload.py scripts/build_operational_payload.py
npm run payload:verify
npm run payload:huggingface
# Build the operational payload bundle in CI before verifying it. The
# tarball is a deterministic build artifact (it embeds dist/, the
# lockfile, and generated manifests) and is intentionally not
# committed to the repo, so the verify step has nothing to check
# unless we generate it here first.
npm run payload:bundle
npm run payload:bundle:verify