Commit Graph
14 Commits
Author SHA1 Message Date
Bohdan Triapitsyn d81b34575a ci: refresh release dispatch and publish updated docs source (#667)
* docs: refresh docs and add tunnel usage guide

Add a new tunnels page with verified, up-to-date CLI examples
Remove deprecated `--daemon` usage and clarify QR/password behavior
Add docs validation tooling and docs-source workflow for packaging and sync

* ci: update release workflow behavior
2026-03-15 03:58:13 +02:00
kalac2232 77467311f1 fix(ci): ensure sidecar architecture matches target in macOS releases (#637)
* fix(ci): pass target architecture to beforeBuildCommand

Set TAURI_ENV_TARGET_TRIPLE environment variable before running
build commands to ensure sidecar binary matches target architecture.

Problem:
- CI builds both arm64 and x86_64 targets in parallel on arm64 runner
- beforeBuildCommand executes before Tauri sets TAURI_ENV_TARGET_TRIPLE
- build-sidecar.mjs fallbacks to process.arch (arm64 on CI runner)
- Both parallel tasks build arm64 sidecars, second task overwrites first
- Result: x86_64 releases contain arm64 sidecar → startup failure on Intel Macs

Solution:
- Explicitly set TAURI_ENV_TARGET_TRIPLE in CI workflow
- Add architecture verification step to detect mismatches early

Evidence:
- Official DMG OpenChamber_1.8.5_darwin-x86_64.dmg contains arm64 sidecar
- Local build with explicit env var produces correct x86_64 sidecar
- /Applications/OpenChamber.app/Contents/MacOS/openchamber-server: arm64
- packages/desktop/src-tauri/sidecars/...: x86_64 (with env var)

Fixes startup failure on Intel Macs where official x86_64 DMG
contains arm64 sidecar binary, causing indefinite loading screen.

* fix(ci): normalize architecture names in verification step

Fix architecture mismatch where macOS 'file' command reports ARM binaries
as 'arm64' but verification expects 'aarch64', causing false negatives
in ARM builds.

Changes:
- Update grep pattern to include 'arm64' in extraction
- Add normalize_arch() function to map arm64 -> aarch64
- Improve debug output to show raw and normalized architectures
- Update error messages to show both raw and normalized values

This fixes the issue reported by @btriapitsyn where ARM builds would
fail verification even with correct artifacts, because:
- macOS file command reports: 'Mach-O 64-bit executable arm64'
- Old grep pattern only matched: 'x86_64|aarch64'
- Result: empty string != 'aarch64' → false failure

The normalization ensures consistency between:
- macOS file output (arm64/x86_64)
- Rust/Cargo naming (aarch64/x86_64)
- Tauri target triples (aarch64-apple-darwin/x86_64-apple-darwin)

Fixes architecture verification for both ARM and Intel builds.
2026-03-12 17:56:45 +02:00
Bohdan Triapitsyn a6d87d5348 ci: fix Discord webhook condition in release workflow 2026-03-02 02:35:04 +02:00
Bohdan Triapitsyn c5d4c2c2c7 ci: fix Discord release notification step 2026-03-01 01:57:03 +02:00
Bohdan Triapitsyn 263d4c5325 ci: send Discord notifications from release workflow 2026-02-28 05:00:34 +02:00
Bohdan Triapitsyn ab431a04a6 test: add workflow for building macOS DMG (arm64) with dynamic version input 2026-01-30 11:08:31 +02:00
Iuliia Ivashko 63324f14d8 build: switch release job to macos-15 runner for forward compatibility 2026-01-30 01:11:48 +02:00
Bohdan Triapitsyn 18c5b4c7b5 feat: add multi-project support (#110)
* feat: Implement project management store with project path validation and synchronization

- Added `useProjectsStore` for managing projects, including adding, removing, renaming, and validating project paths.
- Implemented persistence for projects and active project ID using safe storage.
- Introduced synchronization from desktop settings to keep project data consistent.
- Enhanced session store to manage sessions by directory and added new methods for session management.
- Updated todo store to fetch session todos based on the directory context.
- Refactored server code to validate and resolve project directories for various API endpoints.
- Added project entry validation and sanitization to ensure data integrity.

* feat(settings): migrate legacy project settings and update settings loading logic

* feat: enhance project management with directory-aware settings and improved agent/command source handling

* feat: enhance session and project management with directory-aware settings and improved configuration refresh logic

* feat: enhance project management with worktree manager integration and project directory resolution

* feat: enhance agent groups store with project directory resolution and loading logic

* feat: add heartbeat management and global wrapping for SSE blocks in agent and chat providers

* feat: refactor command and project handling in useCommandsStore

- Replaced useDirectoryStore with useProjectsStore to manage project paths.
- Introduced getRequestDirectory function to determine the active project directory.
- Updated command fetching to respect project-level scoping.
- Enhanced error handling and logging for command configuration fetching.
- Improved command configuration saving and updating to utilize project directory context.

feat: enhance project path normalization in useProjectsStore

- Added resolveTildePath function to expand paths starting with ~.
- Updated normalizeProjectPath to utilize home directory for path expansion.

fix: update permission handling in useSessionStore

- Changed Permission type to PermissionRequest for clarity.
- Updated respondToPermission method to use requestId instead of permissionId.

refactor: improve permission utilities

- Introduced types for PermissionAction and PermissionRule.
- Enhanced getAgentDefinition and resolveConfigStore functions for better type safety.
- Added resolvePermissionAction to streamline permission resolution logic.

feat: add agent configuration retrieval endpoint

- Implemented new API endpoint to fetch agent configuration based on project directory.
- Enhanced getAgentPermissionSource to prioritize project-level permissions.

chore: update SDK version in package.json files

- Bumped @opencode-ai/sdk version to ^1.1.1 across all relevant package.json files.

refactor: streamline bridge message handling

- Updated handleBridgeMessage to accept directory parameter for agent and command requests.
- Improved local API request handling to extract directory from query parameters and headers.

feat: enhance project configuration management

- Added functions to retrieve and merge project configuration paths.
- Improved handling of existing project configuration files for agents and commands.

* feat: enhance VSCode integration and session management

- Added support for a sticky sidebar header background in light and dark themes.
- Introduced functions to read VSCode workspace directory and check if running in VSCode.
- Implemented detailed logging for session loading and creation processes.
- Enhanced session filtering based on directory structure and canonical paths.
- Added a new method to reorder projects and prevent modifications in VSCode workspace.
- Improved error handling and logging for app initialization and markdown file parsing.
- Updated API checks and health checks to ensure readiness before proceeding.
- Refactored code for better readability and maintainability across various modules.

* feat: improve agent and branch selection logic, enhance session management, and update multi-run creation response

* feat: add worktree management actions in agent group detail and sidebar, including delete and keep only options

* fix(ui): share IME guard and cover multi-run

* fix(session): reduce maximum visible sessions in group from 7 to 5
2026-01-06 21:31:04 +02:00
Bohdan Triapitsyn b331a31414 fix: update DMG naming convention to include version and platform information 2025-12-30 01:35:31 +02:00
Bohdan Triapitsyn 9232599b3c fix: update artifact naming for DMG, tar.gz, and signature files to include platform information 2025-12-30 00:39:29 +02:00
Nick Roth aefbb1eac2 feat: add intel mac support (#80) 2025-12-28 22:57:26 +02:00
Bohdan Triapitsyn ff874cc33d feat: switch project from pnpm to bun 2025-12-26 16:45:30 +02:00
Bohdan Triapitsyn 9006622789 chore: update macOS runner version to 26 and set desktop package version to 1.0.1 2025-12-07 20:21:32 +02:00
Bohdan Triapitsyn 4b2edf7318 Initial public release 2025-12-07 19:32:53 +02:00