mirror of
https://github.com/shipshitdev/skills.git
synced 2026-09-19 06:04:15 +08:00
b75b7f351b
* 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
90 lines
2.5 KiB
YAML
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
|