Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions .github/workflows/pr-check-cross.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: PR Check (Cross-Platform)

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]

jobs:
verify:
strategy:
fail-fast: false
matrix:
os: [macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4

- name: Setup Node
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:
node-version: '20'
cache: 'npm'

- name: Install Node Dependencies
run: npm ci

- name: Setup Rust
uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable
with:
components: clippy

- name: Clear stale sccache wrapper
shell: bash
run: unset RUSTC_WRAPPER 2>/dev/null; echo "RUSTC_WRAPPER=" >> "$GITHUB_ENV"

- name: Cache Rust
uses: swatinem/rust-cache@c19371144df3bb44fab255c43d04cbc2ab54d1c4 # v2.9.1
with:
workspaces: src-tauri
prefix-key: v1

- name: Rust Tests
shell: bash
run: cd src-tauri && cargo test

- name: Rust Clippy
shell: bash
run: cd src-tauri && cargo clippy -- -D warnings

- name: Frontend Build
run: npm run build
279 changes: 0 additions & 279 deletions .github/workflows/release-linux.yml

This file was deleted.

4 changes: 2 additions & 2 deletions src-tauri/src/auth.rs
Original file line number Diff line number Diff line change
Expand Up @@ -243,8 +243,8 @@ fn write_vault_windows(tmp_path: &std::path::Path, blob: &[u8]) -> Result<(), St
let stderr = String::from_utf8_lossy(&out.stderr);
log::warn!(
target: "auth::vault",
code = ?out.status.code(),
"icacls failed to tighten vault ACL; file may be world-readable: {stderr}"
"icacls failed to tighten vault ACL (exit code {:?}); file may be world-readable: {stderr}",
out.status.code(),
);
}
Err(e) => {
Expand Down
3 changes: 2 additions & 1 deletion src-tauri/src/tests/flow_test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -333,7 +333,8 @@ fn pty_reader_pauses_without_acks_and_resumes_losslessly() {

// ── Phase 2: 수신분을 ack하며 소비 → 재개되어 끝까지 유실 없이 도착해야 함
flow.on_ack(CONN, &pty_id, received.len());
let deadline = std::time::Instant::now() + Duration::from_secs(60);
// macOS CI 러너 변동성 마진. 데이터 유실이라면 어떤 timeout도 fail이라 검증 강도는 유지된다.
let deadline = std::time::Instant::now() + Duration::from_secs(180);
while !contains_subslice(&received, b"\r\n100000\r\n") {
assert!(
std::time::Instant::now() < deadline,
Expand Down
Loading