From d06fbd69335ae4a61b65f5a833e74802f1ddc7a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Du=C5=A1an=20Milicevic?= Date: Wed, 17 Jun 2026 16:33:56 -0500 Subject: [PATCH 1/2] =?UTF-8?q?ci:=20add=20GitHub=20Actions=20workflow=20(?= =?UTF-8?q?build=20=C2=B7=20typecheck=20=C2=B7=20test)=20+=20README=20badg?= =?UTF-8?q?e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Runs pnpm install (frozen) → build → typecheck → test on push to main and on every PR, across Node 20 and 22. Gives the existing branch protection real teeth: a red PR is now visibly failing. Concurrency cancels superseded runs. (Codex review #12.) Mark this check "required" in branch protection once it has run once to make green CI a hard merge gate. --- .github/workflows/ci.yml | 48 ++++++++++++++++++++++++++++++++++++++++ README.md | 2 ++ 2 files changed, 50 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..3c72c34 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,48 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + branches: [main] + +# Cancel superseded runs on the same ref. +concurrency: + group: ci-${{ github.ref }} + cancel-in-progress: true + +jobs: + build-test: + name: build · typecheck · test + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + node-version: [20, 22] + steps: + - uses: actions/checkout@v4 + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + version: 9 + + - name: Set up Node ${{ matrix.node-version }} + uses: actions/setup-node@v4 + with: + node-version: ${{ matrix.node-version }} + cache: pnpm + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + # build before typecheck/test: cross-package imports resolve from + # each package's built dist/ (tsup output). + - name: Build + run: pnpm -r build + + - name: Typecheck + run: pnpm -r typecheck + + - name: Test + run: pnpm -r test diff --git a/README.md b/README.md index 77159d1..b41be8f 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,7 @@ # ASIL — Autonomous Software Improvement Loop +[![CI](https://github.com/telivity-otaip/asil/actions/workflows/ci.yml/badge.svg)](https://github.com/telivity-otaip/asil/actions/workflows/ci.yml) + > Scan a codebase. Find issues. Generate fixes. Review them three times. Stop when domain expertise is required. Open a PR only when every gate passes. ASIL is the open-source extract of a production autonomous coding pipeline. It is the first publicly-available system that pairs autonomous code generation with **multi-gate review, cost control, and a domain-expertise boundary** — so the loop knows when to keep working and when to stop and ask a human. From 5e099c08b5113be5e1203397dfa9ca0a41e5dfbf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Du=C5=A1an=20Milicevic?= Date: Wed, 17 Jun 2026 16:35:16 -0500 Subject: [PATCH 2/2] ci: let pnpm/action-setup read version from packageManager (fix conflict) --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3c72c34..5f55e8e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,10 +22,10 @@ jobs: steps: - uses: actions/checkout@v4 + # Version comes from package.json "packageManager" — do NOT also + # set `version:` here, or action-setup errors on the conflict. - name: Install pnpm uses: pnpm/action-setup@v4 - with: - version: 9 - name: Set up Node ${{ matrix.node-version }} uses: actions/setup-node@v4