Skip to content

fix: syntax errors in openclaw-plugin test files #560

fix: syntax errors in openclaw-plugin test files

fix: syntax errors in openclaw-plugin test files #560

Workflow file for this run

name: CI
on:
push:
pull_request:
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Load EvidenceOS vendor lock
run: |
set -euo pipefail
source scripts/evidenceos_vendor.lock
echo "EVIDENCEOS_REPO=$EVIDENCEOS_REPO" >> $GITHUB_ENV
echo "EVIDENCEOS_REV=$EVIDENCEOS_REV" >> $GITHUB_ENV
- name: Bootstrap CI artifacts directory
run: mkdir -p artifacts/ci && echo "bootstrap" > artifacts/ci/_ci_bootstrap.txt
- name: Check for case-insensitive filename collisions
run: ./scripts/check_case_insensitive_collisions.sh
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy, llvm-tools-preview
- name: Install nightly toolchain (for fuzz)
uses: dtolnay/rust-toolchain@nightly
- name: Install protoc
run: sudo apt-get update && sudo apt-get install -y protobuf-compiler
- name: Verify no local EvidenceOS proto drift
run: ./scripts/check_proto_drift.sh
- name: Validate EvidenceOS pin tag
run: ./scripts/validate_evidenceos_pin.sh
- name: Verify vendored EvidenceOS crates are pinned and drift-free
run: ./scripts/check_vendor_drift.sh
- name: Install coverage and fuzz tooling
run: |
cargo install cargo-llvm-cov --locked --force
cargo install cargo-fuzz --locked --force
- name: Check coverage threshold drift
run: ./scripts/check_coverage_threshold_drift.sh
- name: Run format, clippy, tests, coverage evidence script
run: ./scripts/test_evidence.sh
- name: Run DiscOS red-team subset
run: cargo test -p evidenceos-redteam --lib
- name: Upload CI artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: discos-ci-artifacts
path: artifacts/ci/
if-no-files-found: error
forc10_verify:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check for case-insensitive filename collisions
run: ./scripts/check_case_insensitive_collisions.sh
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
- name: Run FORC10 artifact verification
run: make -C artifacts/forc10 verify
openclaw_plugin:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check for case-insensitive filename collisions
run: ./scripts/check_case_insensitive_collisions.sh
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Build and check OpenClaw plugin
working-directory: integrations/openclaw-plugin
run: |
npm ci
npm run check
npm run build
npm test
preflight_e2e:
runs-on: ubuntu-latest
env:
EVIDENCEOS_PREFLIGHT_URL: http://127.0.0.1:8787
steps:
- uses: actions/checkout@v4
- name: Load EvidenceOS vendor lock
run: |
set -euo pipefail
source scripts/evidenceos_vendor.lock
echo "EVIDENCEOS_REPO=$EVIDENCEOS_REPO" >> $GITHUB_ENV
echo "EVIDENCEOS_REV=$EVIDENCEOS_REV" >> $GITHUB_ENV
- name: Check for case-insensitive filename collisions
run: ./scripts/check_case_insensitive_collisions.sh
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Validate EvidenceOS pin tag
run: ./scripts/validate_evidenceos_pin.sh
- name: Checkout pinned EvidenceOS
run: |
git clone "$EVIDENCEOS_REPO" ../EvidenceOS
cd ../EvidenceOS
git checkout "$EVIDENCEOS_REV"
- name: Build evidenceos-daemon
run: cargo build --manifest-path ../EvidenceOS/Cargo.toml --bin evidenceos-daemon --release
- name: Start daemon and wait for preflight endpoint
run: |
mkdir -p artifacts/preflight-e2e
../EvidenceOS/target/release/evidenceos-daemon --preflight-http-listen 127.0.0.1:8787 --data-dir artifacts/preflight-e2e/data > artifacts/preflight-e2e/daemon.log 2>&1 &
echo $! > artifacts/preflight-e2e/daemon.pid
for _ in $(seq 1 60); do
code=$(curl -s -o artifacts/preflight-e2e/preflight.json -w "%{http_code}" http://127.0.0.1:8080/preflight || true)
if [ "$code" = "200" ]; then
exit 0
fi
sleep 1
done
echo "preflight endpoint did not return HTTP 200 before timeout; see artifacts/preflight-e2e/daemon.log" >&2
exit 1
- name: Run openclaw-plugin daemon preflight e2e test
working-directory: integrations/openclaw-plugin
run: |
npm ci
npm run build
node --test tests/plugin.e2e-daemon.test.js
- name: Run langchain-wrapper daemon preflight e2e test
working-directory: integrations/langchain-wrapper
run: |
python -m pip install --upgrade pip
python -m pip install -e .[test]
pytest -q tests/test_e2e_daemon_contract.py
- name: Stop daemon
if: always()
run: |
if [ -f artifacts/preflight-e2e/daemon.pid ]; then
kill $(cat artifacts/preflight-e2e/daemon.pid) || true
wait $(cat artifacts/preflight-e2e/daemon.pid) || true
fi
- name: Upload preflight e2e artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: preflight-e2e-artifacts
path: artifacts/preflight-e2e/
if-no-files-found: warn
system:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Load EvidenceOS vendor lock
run: |
set -euo pipefail
source scripts/evidenceos_vendor.lock
echo "EVIDENCEOS_REPO=$EVIDENCEOS_REPO" >> $GITHUB_ENV
echo "EVIDENCEOS_REV=$EVIDENCEOS_REV" >> $GITHUB_ENV
- name: Check for case-insensitive filename collisions
run: ./scripts/check_case_insensitive_collisions.sh
- name: Install Rust
uses: dtolnay/rust-toolchain@stable
- name: Install protoc
run: sudo apt-get update && sudo apt-get install -y protobuf-compiler
- name: Validate EvidenceOS pin tag
run: ./scripts/validate_evidenceos_pin.sh
- name: Checkout pinned EvidenceOS
run: |
git clone "$EVIDENCEOS_REPO" ../EvidenceOS
cd ../EvidenceOS
git checkout "$EVIDENCEOS_REV"
- name: Build evidenceos-daemon
run: cargo build --manifest-path ../EvidenceOS/Cargo.toml --bin evidenceos-daemon --release
- name: Run system test script
env:
EVIDENCEOS_DAEMON_ADDR: http://127.0.0.1:50051
EVIDENCEOS_DAEMON_BIN: ${{ github.workspace }}/../EvidenceOS/target/release/evidenceos-daemon
run: ./scripts/system_test.sh
- name: Upload system test artifacts
if: always()
uses: actions/upload-artifact@v4
with:
name: system-test-artifacts
path: artifacts/system-test/
if-no-files-found: warn