[done] CI 削減 PR #297 https://github.com/rail44/quacker/pull/297 @rail44.dev/kneume

計測ドリブンで支配項=Server check job(現行 config の billed 分の40%)を特定。step 分解で cargo nextest 52s の大半が compile(46.6s)で実テストは 8.2s と判明。中身は (1) band-aid の cargo clean -p libduckdb-sys が強制する dep 再ビルド、(2) ローカル crate quacker の test-profile compile(CI は default debug=2、ローカルは既に line-tables-only)。

対策2点(どちらも check job の build を速くする同系統):
- target/duckdb-download を Cargo.lock キーで cache 化し forced clean を cache-miss 時のみに条件化 → nextest が deps を再ビルドせず quacker だけ compile
- check job を CARGO_PROFILE_{DEV,TEST}_DEBUG=line-tables-only で build(CI env のみ、repo .cargo/config.toml は空のまま、Fly/Docker deploy は別 profile なので本番バイナリ不変)

計測(PR 自身の check run、warm):check job ~110-116s → 83-85s(~25%減)。nextest 52s→39-41s、cache restore 25s→14s。319/319 tests pass。検査カバレッジ・deploy job 不変。

注意: CARGO_PROFILE env で rust-cache key が変わるため merge 後 main 初回 push のみ cold(~5分)、以降 warm。deploy gate 影響なし。

deferred(scope 外): より大きい billing lever = check が PR+push で二重実行(~33%)。push/deploy path は PR-event CI で検証できず deploy 退行リスクのため別 PR。83s でも GHA 分単位切り上げで 2 billed min。