v1.19.0 Solana Signing Parity — the policy fence crosses chains #182
Workflow file for this run
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: CI | |
| on: | |
| push: | |
| branches: ["**"] | |
| pull_request: | |
| branches: ["**"] | |
| # Least-privilege at workflow level: no job in this file needs write access. | |
| # Individual jobs can opt up if/when needed. | |
| permissions: | |
| contents: read | |
| # Split CI into parallel jobs so a single failure point gets fast feedback | |
| # instead of waiting for the whole serial pipeline. | |
| jobs: | |
| typecheck: | |
| name: TypeScript (tsc --noEmit) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: npm | |
| cache-dependency-path: mcp-server/package-lock.json | |
| - name: Install mcp-server deps | |
| run: cd mcp-server && npm ci | |
| - name: Type-check | |
| run: cd mcp-server && node node_modules/typescript/bin/tsc --noEmit | |
| test-mcp: | |
| name: vitest (mcp-server) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: npm | |
| cache-dependency-path: mcp-server/package-lock.json | |
| - name: Install and test mcp-server | |
| run: cd mcp-server && npm ci && npm test | |
| test-mock: | |
| name: vitest (mock-server) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: npm | |
| cache-dependency-path: mock-server/package-lock.json | |
| - name: Install and test mock-server | |
| run: cd mock-server && npm ci && npm test | |
| validate: | |
| name: validate.sh (file/frontmatter/version checks) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| persist-credentials: false | |
| - name: Run validate.sh | |
| run: bash scripts/validate.sh | |
| patterns: | |
| name: solc compile patterns/*.md | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: npm | |
| cache-dependency-path: mcp-server/package-lock.json | |
| - name: Install mcp-server deps (solc + @openzeppelin/*) | |
| run: cd mcp-server && npm ci | |
| - name: Compile every Solidity block under patterns/ | |
| run: node scripts/check-patterns.mjs | |
| boot-smoke: | |
| name: MCP server boot smoke (tools/list) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| persist-credentials: false | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: npm | |
| cache-dependency-path: mcp-server/package-lock.json | |
| - name: Build mcp-server | |
| run: cd mcp-server && npm ci && npm run build | |
| - name: Spawn server and assert tools/list response | |
| run: node scripts/mcp-boot-smoke.mjs |