Commit Graph
14 Commits
Author SHA1 Message Date
Kang 505e54b806 feat(ci): implement selective job execution for Rust workflows
- Introduced an `orchestrate` job to determine which CI jobs to run based on changed paths in pull requests.
- Updated Rust workflow to conditionally execute jobs like linting, testing, and plugin SDK based on the selection logic.
- Added a new script `select_rust_jobs.py` to handle job selection logic without requiring a Rust installation.
- Enhanced documentation to explain the new CI execution model and its implications for contributors.
2026-11-02 13:03:16 +08:00
Kang 3807a6e410 test(tmux): exercise real control sessions across supported versions 2026-11-02 01:08:31 +08:00
Kang b9ffd20189 feat(ci): add Windows terminal execution tests and improve test isolation
- Introduced a new CI step for testing Windows shared terminal execution to ensure ConPTY functionality is validated in isolation.
- Updated the test for shared entry routes to explicitly ignore it outside of the Windows CI environment.
- Refactored the telnet test to improve the handling of application writes and idle intervals, ensuring accurate timing for slow writes.
2026-10-27 09:34:49 +08:00
Kang 9663a91287 feat(release): add Windows MSI packaging and verification
- Implemented MSI packaging for stable releases, including installation scripts and metadata generation.
- Added tests to ensure MSI files are correctly generated and verified against expected properties.
- Updated release workflows to include MSI installation and signing steps.
- Enhanced artifact management to conditionally include MSI files based on release type.
2026-10-26 17:33:24 +08:00
Kang c0fd97179f ci(release): verify signed candidates without publishing
Pin package checkouts and validate per-target source provenance before signing or reusing artifacts. Separate verification from GitHub and R2 publication, and exercise invalid signatures and rehearsal publication gates.
2026-10-26 14:25:38 +08:00
Kang 4f9d81301c Merge pull request #975 from moonmicah/feat/local-cwd-sync
feat(transport,desktop): sync local POSIX shell cwd to file browser
2026-10-25 16:50:20 +08:00
Kang 9a99aea746 fix(transport): clean shell startup files on session teardown
Keep integration files in a host-owned TempDir until ConPTY teardown and
worker joins finish. Use exec for the target shell so active session close
no longer depends on a bootstrap process running its EXIT trap.

Cover close during rc input, foreground execution, normal exit, and WSL
foreground teardown. Run the Git Bash lifecycle tests in Windows CI.

Validation on Windows:
- cargo check --workspace --locked -j 1
- cargo test --workspace --locked --no-fail-fast -j 1
- cargo fmt --all -- --check
- cargo clippy --workspace --all-targets --locked -j 1 -- -D warnings
- Explicit Git Bash ConPTY and WSL startup/close regressions

Architecture lint retains the existing admission.rs thread-builder and
table.rs raw-scroll violations; neither file is changed here.
No persistence contracts or pinned dependencies change.
2026-10-25 16:27:57 +08:00
Kang 3cd8bdf7dd feat(windows_resources): enhance Windows application versioning and resource management (#979)
- Added support for embedding version information in Windows executables, including major, minor, patch, and revision components.
- Updated the build script to generate a comprehensive Windows resource file with application metadata.
- Implemented tests to validate the correct embedding of version information and resource requirements for Windows applications.
- Enhanced the verification process for Windows applications to ensure the presence of version resources and correct metadata.
- Introduced new tests for handling versioning edge cases and ensuring compliance with Windows versioning standards.
2026-10-24 14:25:53 +08:00
Kang 3f9f15cc6e feat(release): add bump version script and update workflows
Introduced a new script for bumping the Cargo workspace version, which updates both `Cargo.toml` and `Cargo.lock` while preserving comments and formatting. Updated CI workflows to include the new `test_bump_version` script, ensuring version bump tests are executed during the CI process.
2026-10-05 23:31:37 +08:00
Kang 2250e90dba feat(plugin-sdk): add new job for building and testing plugin SDK components
Introduced a new job in the GitHub Actions workflow for the Plugin SDK, which includes steps for checking out the repository, setting up Rust with necessary components, installing Linux dependencies, checking formatting, building SDK guests, and verifying the packaged SDK. Updated the Rust gate job dependencies to include the new plugin-sdk job.

Additionally, refactored the NyaTermApp to improve the handling of floating panel close actions based on the current panel state, ensuring better user experience. Enhanced plugin management by implementing shutdown procedures and revising invocation checks to include expected revisions, improving stability and error handling during plugin operations.

Added comprehensive tests for the plugin service to validate the new functionality and ensure robust performance across various scenarios.
2026-10-04 20:28:18 +08:00
Kang 8b0d569d96 fix(ssh): enhance shell integration with prepared integration structure
- Introduced `PreparedSshShellIntegration` to streamline shell integration handling.
- Updated `SshShellIntegrationState` to manage pending integrations instead of scripts.
- Refactored related functions to utilize the new structure for improved clarity and maintainability.
- Added support for additional shell types in integration scripts.
- Adjusted tests to accommodate changes in shell integration logic.
2026-09-13 00:57:47 +08:00
Kang 8e27865206 ci(contributing, docs): enhance contribution guidelines and installation instructions
- Updated the `CONTRIBUTING.md` to include additional test commands for release asset verification and package metadata generation.
- Revised `README.md` and `README.zh-CN.md` to clarify the installation process for Windows portable editions and added details on migrating from Tauri to GPUI.
- Introduced new workflows for publishing to AUR, Gitee, and Homebrew, ensuring streamlined release processes across platforms.
- Added a new `actionlint.yaml` for workflow syntax validation, improving CI/CD reliability.
- Enhanced documentation to reflect changes in artifact versioning and release management, ensuring clarity for contributors and users.
2026-08-31 10:32:18 +08:00
Kang cd5c925676 chore(ci): enforce warnings and architecture boundaries
Clear the existing workspace Clippy warnings and make warnings fatal in CI. Add a budgeted architecture check that prevents new crate-boundary, raw-thread, raw-scroll, module-path, and wildcard-import debt while requiring every temporary exception to stay justified and current.
2026-08-30 00:58:09 +08:00
Kang 2df15871cc ci(workflows): update CI configurations and enhance documentation
- Modified `.gitattributes` to ensure nested CI scripts under `scripts/ci/` are correctly matched.
- Updated `CONTRIBUTING.md` for clarity and added details on local checks, including the importance of `--no-fail-fast` in testing.
- Introduced new GitHub Actions for setting up Rust and managing documentation workflows, improving CI efficiency.
- Removed the outdated `native-checks.yml` workflow and replaced it with a more comprehensive `rust.yml` workflow for better testing coverage.
- Added scripts for verifying release assets and installing necessary tooling, enhancing the release process.

This commit refines the CI/CD pipeline, ensuring better organization, clarity, and functionality across workflows and documentation.
2026-08-25 22:53:23 +08:00