Files
clawhdf5/.gitea/workflows/ci.yml
T
ClawHDF5 Planner ec6bc80007 INT-02/03/05: overflow-checks, cargo-audit CI, and knowledge graph cycle tests
INT-02: Add [profile.release.package.clawhdf5-format] overflow-checks=true to
root Cargo.toml — provides defense-in-depth for untrusted byte offset
arithmetic in the HDF5 format parser.

INT-03: Install cargo-audit in Gitea CI workflow and call it from ci-test.sh
with --deny warnings. The script gracefully skips the step if cargo-audit is
not installed locally, so developer machines are unaffected.

INT-05: Add three cycle-safety tests for KnowledgeCache:
- test_bfs_neighbors_cycle_terminates: A→B→C→A, verifies b and c appear once
- test_bfs_neighbors_self_loop_terminates: self-loop A→A, verifies empty result
- test_spreading_activation_cycle_converges: cyclic graph with decay_factor 0.5,
  verifies finite convergence and all nodes receive activation

The BFS visited-set guard was already present; these tests lock it in as a
regression boundary so future refactors cannot silently remove it.
2026-08-12 11:29:02 +00:00

29 lines
793 B
YAML

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
container: rust:latest
steps:
- uses: actions/checkout@v4
- name: Cache cargo registry/target
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- name: Install rustfmt & clippy components
run: rustup component add rustfmt clippy
- name: Install thumbv7em-none-eabihf target
run: rustup target add thumbv7em-none-eabihf
- name: Install cargo-audit
run: cargo install cargo-audit --locked
- name: Run CI script
run: bash scripts/ci-test.sh