Files
Vincent b75b7f351b fix: prepare complete issues and enforce delivery gates (#149)
* fix: unify execution-ready issue preparation

* fix: require prepared issues and explicit dispatch roles

* fix: provision prepared workflow skills with dispatch setup

* fix: gate prepared delivery on independent review and CI

* chore: record reviewed delivery adaptations

* fix: align legacy loops with prepared delivery contract

* fix: preserve dispatch claim ownership and validate runtime trust

* fix: synchronize reviewed workflow adapters and provenance

* fix: reject hidden plan input and isolate planner credentials
2026-09-14 14:55:42 +02:00

90 lines
2.5 KiB
YAML

name: CI
on:
# No path filter: `checks` is a required status on master, so every PR must
# produce it or the merge button stays blocked on "expected" forever.
pull_request:
branches:
- master
workflow_dispatch:
permissions:
contents: read
jobs:
checks:
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: Checkout
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
with:
fetch-depth: 0 # version:check diffs against origin/master
- name: Setup Bun
uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
with:
bun-version: 1.3.14
- name: Install shellcheck
run: |
sudo apt-get update
sudo apt-get install -y shellcheck
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Lint
run: bun run lint
- name: Validate skills
run: bun run validate
- name: Verify pinned Pstack source and adaptation coverage
run: bun run pstack:verify
- name: Check packaged Pstack runtime
working-directory: skills/pstack/scripts
run: |
bun install --frozen-lockfile
bun run test
bun run typecheck
- name: Require version bumps on changed skills
run: bun run version:check
env:
BASE_REF: origin/${{ github.base_ref || 'master' }}
- name: Check packaged skill helper fixtures
run: |
for test_dir in skills/*/tests; do
[ -d "$test_dir" ] || continue
python3 -m unittest discover -s "$test_dir" -p 'test_*.py'
done
find skills -type f -name '*.test.mjs' -not -path '*/node_modules/*' -exec node --test {} +
- name: Check dispatch guard regressions
run: node --test .github/agent-dispatch.test.cjs
- name: Check validator regression fixtures
run: python3 -m unittest discover -s scripts/tests -p 'test_*.py'
- name: Audit dependencies
run: bun audit
- name: Generate marketplace bundles
run: bun run marketplace:generate
- name: Verify generated bundles are current
run: |
git diff --exit-code -- \
bundles/ \
.claude-plugin/marketplace.json \
catalog.json \
README.md \
AGENTS.md \
.agents/memory/memory.md \
.agents/memory/architecture.md \
package.json