28 Commits
Author SHA1 Message Date
hy 3b9ba40774 fix: gate releases on packaged cache regression evidence
Signed-off-by: hy <xiaoyuan9816@gmail.com>
2026-10-21 13:47:40 +08:00
hy 1eedabb914 feat: add support for language and service route preferences
- Updated ModelSource type to include 'huggingface'.
- Enhanced MODEL_SOURCE_LABELS for better clarity.
- Introduced defaultModelSource function to determine default source based on service route.
- Modified AppSettings to include language and serviceRoute.
- Created end-to-end tests for language and service route settings.
- Added unit tests for application language and service preferences.
- Updated free models test to reflect new catalog naming conventions.
- Enhanced official API tests to ensure correct handling of service regions.
- Adjusted release artifact tests to accommodate internationalization.
- Updated SQLite migration and storage tests to include new preferences.
2026-10-21 10:05:42 +08:00
hy 978c33f371 fix: synchronize desktop releases across COS, R2 and GitHub
Signed-off-by: hy <xiaoyuan9816@gmail.com>
2026-10-20 18:12:56 +08:00
hy 04295587e1 feat: integrate GitHub releases and prepare public repository
Signed-off-by: hy <xiaoyuan9816@gmail.com>
2026-10-20 15:38:48 +08:00
hy 240ab91f7b refactor: remove unused test scripts and improve argument validation
- Removed `test:ai`, `test:settings`, and `test:workbench` scripts from package.json.
- Updated test plan documentation to reflect the removal of `test:workbench`.
- Enhanced argument parsing in release scripts to ensure required values are provided.
- Added validation for unknown arguments in release scripts.
- Improved error handling for invalid arguments in test workflow.
- Updated unit tests to cover new validation logic for release arguments.
2026-09-18 14:49:01 +08:00
hy 203f8ab180 feat(showcase): add new tests for PPT management and knowledge base interactions
- Implemented `ppt-management-briefing-edit.showcase.test.ts` to test editing PPTs with AI assistance, including cost computation and screenshot capture.
- Created `ppt-management-briefing-review.showcase.test.ts` for reviewing PPTs, ensuring the generation of review screenshots and cost analysis.
- Added shared utility functions in `shared.ts` for handling showcase fixtures, workspace seeding, and cost computation.
- Developed `xinghe-kb-reply.showcase.test.ts` to validate knowledge base interactions, capturing screenshots of responses and ensuring correct tool usage.
- Introduced `xinghe-service-contract.showcase.test.ts` to test PDF contract inquiries, verifying unchanged source documents and capturing relevant screenshots.
- Configured Vitest for showcase tests in `vitest.showcase.config.mts`, setting appropriate timeouts and test inclusion/exclusion criteria.
2026-09-18 14:22:54 +08:00
hy 2c431406f0 feat(tests): enhance testing framework with explicit collection tasks and execution profiles
- Added `showcase` as an explicit collection task in the testing framework, distinct from product regression.
- Introduced explicit collection task rules and updated documentation to reflect changes in testing structure.
- Updated E2E testing commands to utilize `--execution-profile` for better control over test execution.
- Implemented validation to prevent the selection of certain groups (e.g., `showcase`) during release command parsing.
- Enhanced regression selection logic to allow opt-in groups for release impact assessment while rejecting disallowed groups.
- Updated related scripts and test cases to ensure compliance with new testing rules and execution profiles.
2026-09-18 13:56:30 +08:00
hy 5cff282d2c feat(e2e): introduce default exclude groups for E2E tests and update related scripts 2026-09-18 12:36:56 +08:00
hy ee5a1fcea3 feat(wps): update test configurations and add WPS office reload e2e test 2026-09-15 18:23:53 +08:00
hyandCursor 590ba23252 fix: invoke package E2E via node so pnpm does not forward --
pnpm run now passes a literal -- into workflow.mjs, which rejects unknown args and blocks release:mac --test-only.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-11 18:19:00 +08:00
hy 7cd3782f1e Refactor macOS release handling: remove x64 support and streamline metadata processing
- Removed support for macos-x64 in fragment definitions and related scripts.
- Updated finalize-macos script to only handle macos-arm64, simplifying signature checks and metadata writing.
- Deleted merge-mac-metadata script as it is no longer needed.
- Adjusted storage layout and release status checks to reflect the removal of x64.
- Updated tests to ensure they only validate macos-arm64 functionality.
2026-09-01 16:36:09 +08:00
hy c193edf338 Refactor web crawler sidecar build process and improve Playwright browser handling
- Removed bundled Playwright browser assertions and adjusted driver bundle copying to ignore local browsers.
- Introduced new assertions to ensure no Playwright browser files are bundled with the sidecar.
- Updated macOS and Windows release scripts to remove references to the sidecar browser cache.
- Enhanced WebCrawlerService to utilize an isolated Electron CDP connection for better browser context management.
- Added ElectronWebCrawlerBrowserHost class to manage browser connections and views.
- Updated tests to reflect changes in the web crawler service and ensure proper handling of CDP connections.
- Improved message rendering for AI interactions, including better formatting for tool calls and AI messages.
- Adjusted various test cases to align with new functionality and ensure robustness.
2026-09-01 15:53:33 +08:00
hy 54530878d4 refactor: update environment variable names for release storage configuration 2026-09-01 12:30:39 +08:00
hy d622985d55 refactor: update URLs and storage configurations to use domestic services
- Changed external links in settings-test.md and package.json to point to the new domestic website (guanzhangai.cn).
- Updated electron-builder.yml to publish updates from the new domestic URL.
- Introduced a new storage client for Tencent COS and refactored existing R2 client code to support both storage options.
- Implemented environment variable checks and configurations for Tencent COS and Cloudflare R2.
- Added tests for release storage configuration and ensured proper handling of live publish locks.
- Updated telemetry service to use the new official website URL for event reporting.
2026-09-01 11:44:56 +08:00
hy 3ea0628a65 fix(release): seed native cache in macOS test stage
The test stage builds a clean workspace from the tag but only ran
pnpm install without seeding the prebuilt native cache, so package E2E
re-downloaded better-sqlite3 from GitHub release assets on every run and
failed on flaky network. Seed the cache like the prepare stage does.
2026-08-19 16:11:57 +08:00
hy b0cf4fc052 feat: support multiple --case targets for release package E2E and drop dead resume-passed flow 2026-08-05 14:31:26 +08:00
hy b3ac1ee046 fix: build mac sidecar venv outside the workspace root to avoid nltk CWD import blocks 2026-08-04 18:50:37 +08:00
hy 8ff10ae0b2 test: refine macOS release E2E scheduling 2026-07-27 19:24:41 +08:00
Yoan Huang 81b130bb67 feat(tests): update execution modes and improve workspace binding
- Set execution mode to 'exclusive' for specific e2e tests to ensure isolated execution.
- Set execution mode to 'live' for various e2e tests to enable real-time interactions.
- Refactor workspace binding in tests to use direct binding method for improved reliability.
- Enable file parallelism in Vitest configurations to enhance test execution efficiency.
2026-07-26 10:54:29 +08:00
Yoan Huang 61f7301eb7 feat: add Tidy process documentation and enhance test workflows
- Introduced a new documentation file for the Tidy process, outlining steps for aligning documentation with implementation, organizing PRD and test cases, and verifying settings.
- Updated package.json to include a new test command for non-live AI tests and adjusted existing test commands for settings and updates.
- Implemented a cleanup function for local test logs in the release scripts to ensure a clean environment.
- Enhanced the release preparation script to include unit and non-live AI tests in the workflow.
- Added a new script to validate test architecture, ensuring that test cases align with defined plans and rules.
- Refactored existing test cases to improve organization and clarity, including renaming and restructuring tests for better maintainability.
- Adjusted timeout settings for specific tests to improve reliability.
- Corrected domain assignments in several unit tests to ensure proper categorization.
2026-07-25 08:36:13 +08:00
Yoan Huang cc7e473a58 refactor(release): always prune superseded packages 2026-07-24 22:30:38 +08:00
Yoan Huang ada4c149e0 refactor(release): require packaged regression before publish 2026-07-24 22:19:25 +08:00
hy 3c25f2b4a3 feat(release): split platform tag versions 2026-07-24 19:02:42 +08:00
hy c87cb87072 fix(release): reuse cached macOS native binaries 2026-07-23 10:19:26 +08:00
Yoan Huang 5ec6bf1824 feat(release): split candidate preparation and publishing 2026-07-22 11:46:50 +08:00
Yoan Huang 4ddc364528 feat(release): implement artifact bundle creation and verification
- Added `artifact-bundle.mjs` for creating and verifying release bundles.
- Updated macOS and Windows release scripts to create and upload release bundles.
- Introduced `--package-e2e` flag to run end-to-end tests on packaged releases.
- Modified `package.json` scripts to remove deprecated commands and streamline release process.
- Enhanced E2E testing to utilize release bundles instead of building from source.
- Added unit tests for artifact bundle creation and verification.
- Removed obsolete `route-windows.mjs` script in favor of a unified `windows.mjs` script.
2026-07-22 11:31:12 +08:00
Yoan Huang bc7794813f Refactor E2E tests to improve resource management and cleanup
- Introduced E2EResourceScope for managing resources during E2E tests.
- Updated test cases to register resources and handle disposal in a structured manner.
- Enhanced error handling during resource disposal to capture and report errors.
- Modified workspace setup functions to ensure proper cleanup after tests.
- Adjusted imports and added necessary utility functions for resource management.
2026-07-21 22:56:50 +08:00
hy 7b057c05f8 refactor: reorganize scripts and update paths for build and release processes
- Removed obsolete test script `test_crawl4ai_fit_markdown.py`.
- Deleted `verify-package-main-obfuscation.mjs` as it is no longer needed.
- Updated paths in `app-update-publish-config.test.ts` to reflect new script locations.
- Refactored `package-content-policy.test.ts` to use new paths for content policy scripts.
- Adjusted `package-main-obfuscation.test.ts` to point to the new obfuscation script locations.
- Modified `package-size-budget.test.ts` to use updated paths for size budget scripts.
- Changed `r2-update-metadata-contract.test.ts` to reference the new metadata script.
- Updated `release-fragment-contract.test.ts` to use the new fragment contract script.
- Refactored `release-storage-layout.test.ts` to point to the new storage layout script.
- Added `runtime-trace.test.ts` to test runtime tracing functionality.
- Updated `node-pty-native-release.test.ts` to reflect new paths for native release scripts.
2026-07-20 17:03:38 +08:00