* fix(session): improve local file-open fallback and diagnostics
* fix(session): normalize file URI local path resolution
* test(session): cover file URI normalization edge cases
* test(app): include local file-path regression in e2e flow
* fix(ci): run app e2e script and normalize file:/ URIs
* test(app): run local file-path regression without bun
---------
Co-authored-by: xj <gh-xj@users.noreply.github.com>
* Initial plan
* Add ARM64 build support to workflows and AUR packaging
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
* Fix: Add noextract field update to AUR script
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
* Add comment explaining temporary SKIP checksum for ARM64
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
* Make cross-compilation tools conditional on runner architecture
Cross-compilation tools (gcc-aarch64-linux-gnu) are now only installed when actually cross-compiling (x86_64 → ARM64). Native ARM64 runners will use native compilation without these tools.
This enables flexible deployment:
- Default: Cross-compilation on ubuntu-22.04 (free tier)
- Optional: Native compilation on ubuntu-*-arm64 or self-hosted ARM64 runners
The workflow auto-detects via runner.arch context.
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
* Remove cross-compilation tools installation for native ARM64 runners
Since we're running on native ARM64 runners, cross-compilation tools are not needed. The native toolchain will be used directly for ARM64 builds.
This simplifies the workflow and improves build performance by removing unnecessary package installation.
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
* Refactor: Extract SHA256 checksum calculation to reusable function
Eliminates code duplication by creating a single compute_sha256() function
that is called twice, instead of duplicating the Python code block.
Benefits:
- Reduced script from 132 to 123 lines (9 lines saved)
- Single source of truth for checksum logic
- Easier to maintain and modify in the future
- Follows DRY (Don't Repeat Yourself) principle
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
* Fix: Update comment to use consistent terminology
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
* Replace Python SHA256 hashing with native sha256sum command
Simplifies the compute_sha256() function by replacing the Python implementation
with native bash sha256sum command, reducing complexity and improving performance.
Changes:
- Replaced 13-line Python function with 1-line sha256sum call
- Reduced script from 123 to 113 lines (10 lines saved)
- Eliminated Python interpreter startup overhead for hashing
- Maintains full compatibility with existing checksums
Benefits:
- Simpler, more idiomatic bash implementation
- Faster execution (no Python startup for hashing)
- Easier to read and maintain
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
* Remove compute_sha256 function and inline sha256sum usage
Eliminates the compute_sha256() wrapper function and directly inlines
sha256sum calls, making the code simpler and more transparent.
Changes:
- Removed function definition (lines 46-49)
- Inlined sha256sum calls directly where needed
- Reduced script from 113 to 108 lines (5 lines saved)
- Updated comment to reflect direct usage
Benefits:
- Simpler code with fewer abstractions
- More direct and transparent implementation
- Easier to understand at a glance
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
* Remove useless comments from update-aur.sh
* foo
* bar
* Bring back ARM64 cross-compilation tools
* Add Linux-ARM64-build-and-release branch to workflow
* wip
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: koubas <1354930+koubas@users.noreply.github.com>
Co-authored-by: Benjamin Shafii <benjamin.shafii@gmail.com>
- Allow OpenWork workflows to pull the OpenCode CLI sidecar from a configurable GitHub repo + version (OPENCODE_GITHUB_REPO/OPENCODE_VERSION).\n- Make Settings > Debug show OpenCode binary source + version (e.g. bundled · 1.1.60-openwork.1).
* fix(headless): align openwrk compile path with OpenTUI Solid
Use the upstream @opentui/solid build plugin and preload/tsconfig wiring so compiled openwrk binaries keep TUI runtime compatibility instead of emitting broken React runtime behavior.
* ci: run openwrk checks on feature branch pushes
Trigger CI for fix/openwrk-react-shim and add an openwrk binary build job so bundling regressions are caught before merging to dev.
* ci: relax binary validation to runtime smoke
Use openwrk --version/--help checks instead of grepping embedded strings so the branch CI validates bundling without false failures from defensive error text.
* fix(desktop): build openwrk sidecar via headless build script
Route desktop sidecar preparation through packages/headless/script/build.ts so OpenTUI plugin settings are applied consistently and Linux CI no longer compiles openwrk with incompatible JSX defaults.
Ship the sidecar version manifest with the app so openwrk pins the expected OpenCode version instead of resolving GitHub latest at runtime.
Add a release workflow guard that fails if macOS app bundles are missing versions.json.
Stop pinning OpenCode in package metadata and resolve the latest release during sidecar bundling/runtime, while still allowing OPENCODE_VERSION to pin for reproducible builds.
The publish-npm job now depends on release-openwrk-sidecars so the
openwrk-vX.Y.Z GitHub release exists before 'pnpm --filter openwrk
publish' runs. Uses always() with explicit result checks so the job
still runs when sidecars are skipped (publish_sidecars=false).
- Add ensure_owpenbot_sidecar() to build.rs to create debug stubs when binary missing
- Remove 'if: matrix.os_type == windows' from Bun setup in CI workflows
- This fixes PreRelease builds failing because prepare:sidecar needs bun to compile owpenbot