Skip to content

perf: 벤치마크 기반 파이프라인 재정렬 — doc_update HEAVY로 이동 (2,835L) #33

perf: 벤치마크 기반 파이프라인 재정렬 — doc_update HEAVY로 이동 (2,835L)

perf: 벤치마크 기반 파이프라인 재정렬 — doc_update HEAVY로 이동 (2,835L) #33

Workflow file for this run

name: NEXUS-6 Ecosystem CI
on:
push:
branches: [main]
pull_request:
branches: [main]
schedule:
- cron: '0 6 * * 1' # Weekly Monday 06:00 UTC
env:
CARGO_TERM_COLOR: always
jobs:
rust-test:
name: Cargo Test (nexus6)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- name: Build
run: cargo build --release
- name: Run tests
run: cargo test --release
- name: Verify lens count
run: |
COUNT=$(grep -c "Box::new" src/telescope/mod.rs)
echo "Active lenses: $COUNT"
[ "$COUNT" -ge 100 ] || exit 1
python-test:
name: Python Integration
runs-on: ubuntu-latest
needs: rust-test
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install maturin
run: pip install maturin numpy
- name: Build PyO3 wheel
run: maturin build --release
- name: Install nexus6
run: pip install target/wheels/nexus6-*.whl
- name: Test import and scan
run: |
python3 -c "
import nexus6
import numpy as np
data = np.sin(np.arange(60).reshape(20, 3) * 0.1)
result = nexus6.scan_all(data)
assert isinstance(result, dict), 'scan_all must return dict'
assert len(result) > 0, 'scan_all must return non-empty results'
print(f'OK: {len(result)} lenses returned results')
"
symlink-check:
name: Shared Infra Integrity
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Verify shared structure expectations
run: |
echo "Checking expected shared infrastructure files..."
EXPECTED_FILES=(
"src/telescope/lens_trait.rs"
"src/telescope/shared_data.rs"
"src/telescope/mod.rs"
"src/lib.rs"
"Cargo.toml"
)
MISSING=0
for f in "${EXPECTED_FILES[@]}"; do
if [ ! -f "$f" ]; then
echo "MISSING: $f"
MISSING=$((MISSING + 1))
else
echo "OK: $f"
fi
done
[ "$MISSING" -eq 0 ] || { echo "$MISSING files missing"; exit 1; }
- name: Verify lens module registrations
run: |
echo "Checking all lens files are registered in mod.rs..."
LENS_DIR="src/telescope/lenses"
MOD_FILE="$LENS_DIR/mod.rs"
if [ ! -f "$MOD_FILE" ]; then
echo "WARNING: $MOD_FILE not found, skipping registration check"
exit 0
fi
UNREGISTERED=0
for f in "$LENS_DIR"/*_lens.rs; do
BASE=$(basename "$f" .rs)
if ! grep -q "$BASE" "$MOD_FILE"; then
echo "UNREGISTERED: $BASE"
UNREGISTERED=$((UNREGISTERED + 1))
fi
done
echo "Unregistered lenses: $UNREGISTERED"