Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 48 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -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

# 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

- 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
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -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.
Expand Down
Loading