Skip to content

docs: add root TOPOLOGY.md with module structure and architecture map #178

docs: add root TOPOLOGY.md with module structure and architecture map

docs: add root TOPOLOGY.md with module structure and architecture map #178

# SPDX-License-Identifier: PMPL-1.0-or-later
name: Build Validation
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
permissions:
contents: read
jobs:
validate:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- name: Setup Node.js
uses: actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v4.4.0
with:
node-version: "20"
- name: Setup Deno
uses: denoland/setup-deno@667a34cdef165d8d2b2e98dde39547c9daac7282 # v2
with:
deno-version: "2.x"
- name: Install Linux dependencies for Tauri
run: |
sudo apt-get update
sudo apt-get install -y \
libgtk-3-dev \
libwebkit2gtk-4.1-dev \
libayatana-appindicator3-dev \
librsvg2-dev \
patchelf
- name: Install npm dependencies
run: npm ci
- name: ReScript build gate
run: npm run res:build
- name: Deno test gate
run: deno task test
- name: Rust cargo check gate
run: cargo check --manifest-path src-tauri/Cargo.toml
- name: Rust test gate
run: cargo test --manifest-path src-tauri/Cargo.toml -- --test-threads=1
- name: Setup Rust toolchain for PCC
uses: dtolnay/rust-toolchain@4be9e76fd7c4901c61fb841f559994984270fce7 # stable
with:
toolchain: stable
- name: Build Panel Contract Compiler
run: cargo build --release --manifest-path tools/pcc/Cargo.toml
- name: Panel wiring verification gate
run: ./tools/pcc/target/release/panll panel verify --repo-root .