|
| 1 | +# DeepSeek-TUI Main CI Gate |
| 2 | + |
| 3 | +**Status:** implemented |
| 4 | +**Comparison source:** `Hmbown/DeepSeek-TUI` refreshed at `/tmp/deepseek-tui-compare-20260514`, latest fetched `origin/main` `eeccf7d`. |
| 5 | + |
| 6 | +## Gap |
| 7 | + |
| 8 | +The repository had a release workflow for tags and manual dispatch, but normal |
| 9 | +`main` pushes and pull requests did not run a public CI gate. That left recent |
| 10 | +release-proof work dependent on local checks until the next tag workflow. |
| 11 | + |
| 12 | +## Implementation |
| 13 | + |
| 14 | +- Added `.github/workflows/ci.yml`. |
| 15 | +- The CI workflow runs on `main` pushes, pull requests, and manual dispatch. |
| 16 | +- Linux checks cover Rust formatting, library tests, debug `deepseek` build, |
| 17 | + secret scanning, model-demo recorder/verifier/renderer self-tests, npm |
| 18 | + metadata checks, npm wrapper TUI entrypoint smoke, and Homebrew formula |
| 19 | + validation. |
| 20 | +- The workflow keeps expensive release-only work such as Docker packaging, |
| 21 | + attestation, npm publishing, and tap publishing in the release matrix. |
| 22 | + |
| 23 | +## Verification |
| 24 | + |
| 25 | +- Local equivalents: |
| 26 | + - `cargo fmt --check` |
| 27 | + - `cargo test --lib -- --test-threads=1` |
| 28 | + - `cargo build --bin deepseek` |
| 29 | + - `node scripts/check-secrets.js` |
| 30 | + - `docs/demo/record-model-backed-demo.sh --dry-run` |
| 31 | + - `docs/demo/record-model-backed-demo.sh --redaction-self-test` |
| 32 | + - `docs/demo/verify-model-backed-demo.js --self-test` |
| 33 | + - `docs/demo/render-model-backed-demo-svg.js --self-test` |
| 34 | + - `node npm/scripts/check-version-sync.js` |
| 35 | + - `npm --prefix npm test` |
| 36 | + - `DEEPSEEK_BINARY=target/debug/deepseek node npm/scripts/test-tui-entrypoint-wrapper.js` |
| 37 | + - `node packaging/homebrew/verify-formula.js` |
| 38 | + - `git diff --check` |
0 commit comments