feat(search): P89 — vector snippet enrich + 관찰 세션 랭킹 강등 (#100) #248
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| env: | |
| CARGO_TERM_COLOR: always | |
| RUSTFLAGS: "-Dwarnings" | |
| FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true | |
| jobs: | |
| web-build: | |
| name: Build web/dist | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 9 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: pnpm | |
| cache-dependency-path: web/pnpm-lock.yaml | |
| - name: Install + typecheck + build | |
| working-directory: web | |
| run: | | |
| pnpm install --frozen-lockfile | |
| pnpm typecheck | |
| pnpm build | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: web-dist | |
| path: web/dist | |
| retention-days: 1 | |
| check: | |
| name: Check & Test | |
| needs: web-build | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, windows-latest] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Rust toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: clippy, rustfmt | |
| - name: Cache cargo registry & build | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| ~/.cargo/git | |
| target | |
| key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }} | |
| restore-keys: | | |
| ${{ runner.os }}-cargo- | |
| # P80: cargo-audit / cargo-nextest 를 pre-built binary 로 install — 매 | |
| # run 마다 cargo install 의 컴파일 (~1~2분) 회피. | |
| - name: Install cargo binaries (audit + nextest) | |
| uses: taiki-e/install-action@v2 | |
| with: | |
| tool: cargo-audit,cargo-nextest | |
| - name: Download web/dist | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: web-dist | |
| path: web/dist | |
| - name: cargo fmt --check | |
| run: cargo fmt --all -- --check | |
| # P80: `--all-features` 제거. openvino / coreml feature 는 platform- | |
| # specific SDK 필요 + 빌드 시간 큼. default (web-ui) 만 검사로 충분. | |
| - name: cargo clippy | |
| run: cargo clippy --workspace --all-targets | |
| # P80: cargo-nextest 사용 — parallel test runner, 전통 cargo test 대비 | |
| # ~30% 빠름. doctest 는 별도 step (nextest 미지원). | |
| - name: cargo nextest run | |
| run: cargo nextest run --workspace --no-fail-fast | |
| - name: cargo test --doc | |
| run: cargo test --doc --workspace | |
| - name: cargo audit | |
| run: cargo audit | |
| continue-on-error: true |