Skip to content

fix: remove obsolete sidecar staging from worktree bootstrap#2561

Merged
senamakel merged 3 commits into
tinyhumansai:mainfrom
Subharup-31:fix/worktree-bootstrap-sidecar-staging
May 25, 2026
Merged

fix: remove obsolete sidecar staging from worktree bootstrap#2561
senamakel merged 3 commits into
tinyhumansai:mainfrom
Subharup-31:fix/worktree-bootstrap-sidecar-staging

Conversation

@Subharup-31
Copy link
Copy Markdown
Contributor

@Subharup-31 Subharup-31 commented May 24, 2026

Summary

  • Removes obsolete core sidecar staging from scripts/worktree-bootstrap.sh.
  • Avoids the hardcoded openhuman-core-aarch64-apple-darwin path during fresh worktree bootstrap.
  • Updates setup and Tauri shell docs to reflect the current in-process core model and no-op core:stage hook.

Problem

scripts/worktree-bootstrap.sh still assumed the old sidecar model and checked for a staged Apple Silicon core binary before running cargo build and pnpm core:stage. The current app links the core in-process and core:stage is a no-op, so the bootstrap step is stale and misleading, especially for non-arm64 macOS contributors.

Solution

Remove the sidecar build/staging block from the worktree bootstrap script and align the English/zh-CN setup and Tauri architecture docs with the in-process core lifecycle.

Submission Checklist

  • Tests added or updated: N/A - shell bootstrap cleanup and docs alignment; no runtime behavior added.
  • Diff coverage ≥ 80%: N/A - changed lines are shell/docs, not covered by Vitest/cargo coverage.
  • Coverage matrix updated: N/A - no product feature row changed.
  • All affected feature IDs from the matrix are listed in the PR description under ## Related: N/A - no feature matrix IDs affected.
  • No new external network dependencies introduced.
  • Manual smoke checklist updated: N/A - does not touch release-cut runtime surfaces.
  • Linked issue closed via Closes #NNN in the ## Related section: N/A - this avoids one stale hardcoded architecture path but does not claim to fully resolve the broader Intel CEF issue.

Impact

Fresh worktree bootstrap no longer performs an unnecessary core build or checks an Apple-Silicon-specific sidecar path. This should make local setup less confusing and avoids reinforcing stale sidecar guidance.

Related


AI Authored PR Metadata (required for Codex/Linear PRs)

Linear Issue

  • Key: N/A
  • URL: N/A

Commit & Branch

  • Branch: fix/worktree-bootstrap-sidecar-staging
  • Commit SHA: 2c0c0699f33d222c68f5fc2a6cc5f7a8f9fd2914

Validation Run

  • pnpm --filter openhuman-app format:check: not run; fresh clone has no node_modules and this PR only changes shell/docs.
  • pnpm typecheck: not run; no TypeScript source changed.
  • Focused tests: bash -n scripts/worktree-bootstrap.sh
  • Rust fmt/check (if changed): N/A - no Rust changed.
  • Tauri fmt/check (if changed): N/A - no Tauri Rust changed.
  • git diff --check

Validation Blocked

  • command: pnpm --filter openhuman-app format:check
  • error: dependencies are not installed in this fresh clone (node_modules absent).
  • impact: formatting/typecheck gates should be unaffected by shell/docs-only changes; shell syntax and whitespace checks passed locally.

Behavior Changes

  • Intended behavior change: fresh worktree bootstrap skips obsolete sidecar staging.
  • User-visible effect: contributors see less stale setup behavior and documentation.

Parity Contract

  • Legacy behavior preserved: submodule initialization, env symlinking, dependency install, and vendored Tauri CLI installation remain unchanged.
  • Guard/fallback/dispatch parity checks: N/A - no runtime dispatch path changed.

Duplicate / Superseded PR Handling

  • Duplicate PR(s): none found during current open PR scan.
  • Canonical PR: this PR.
  • Resolution (closed/superseded/updated): N/A

Summary by CodeRabbit

  • Documentation
    • Updated architecture docs to describe an embedded core server in the desktop host instead of an external sidecar.
    • Simplified local build/setup guides to remove sidecar staging and streamline desktop build/dev steps.
  • Chores
    • Updated bootstrap script and setup notes to remove sidecar staging logic and reflect the new local-worktree workflow.

Review Change Stack

@Subharup-31 Subharup-31 requested a review from a team May 24, 2026 07:08
@qodo-code-review
Copy link
Copy Markdown

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 24, 2026

📝 Walkthrough

Walkthrough

Documentation across architecture guides, setup instructions, and bootstrap scripts is revised to reflect the transition from an external openhuman-core sidecar to an embedded in-process core server. Build workflows are simplified by removing explicit staging and compilation steps.

Changes

Core Server Model Documentation Update

Layer / File(s) Summary
Architecture documentation updates
gitbooks/developing/architecture/tauri-shell.md, gitbooks/developing/architecture/tauri-shell.zh-CN.md
English and Chinese architecture docs update Tauri shell responsibilities to describe an embedded openhuman-core server lifecycle, JSON-RPC relay via core_rpc_relay, and CoreProcessHandle task ownership. The sidecar building and staging workflow sections are removed, and core:stage is documented as a no-op for compatibility.
Build and setup guide updates
gitbooks/developing/getting-set-up.md, gitbooks/developing/getting-set-up.zh-CN.md
English and Chinese setup guides simplify desktop artifact build instructions to proceed directly from pnpm install to pnpm build, removing prior explicit cargo build (openhuman-core) and pnpm core:stage steps. Introductory descriptions are aligned with the new embedded model.
Bootstrap script cleanup
scripts/worktree-bootstrap.sh
Worktree bootstrap script removes the entire sidecar staging block (binary path checks, Cargo build, and pnpm core:stage invocation) and updates comments to reflect generic per-worktree file requirements instead of specific staged binary references.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

Suggested labels

documentation

Suggested reviewers

  • senamakel

Poem

🐰 From sidecar binaries, we hop away,
An embedded core now saves the day,
No staging scripts or copying round—
JSON‑RPC flows through, no fuss, no sound. ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly and accurately describes the main change: removing obsolete sidecar staging logic from the worktree bootstrap script, which is the primary purpose of this PR.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot added the working A PR that is being worked on by the team. label May 24, 2026
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@gitbooks/developing/architecture/tauri-shell.md`:
- Line 13: Update the broken link fragment: replace the anchor "`#commands`" used
in the sentence "Expose a small, explicit set of Tauri commands (see
[Commands](`#commands`))" with the actual heading ID
"`#tauri-ipc-commands-app-src-tauri`" so the link points to the existing
"Commands" section (i.e., change the link target from "`#commands`" to
"`#tauri-ipc-commands-app-src-tauri`").
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 01d3f4b3-fbcb-4bbe-8446-265de4ebf639

📥 Commits

Reviewing files that changed from the base of the PR and between e9ca97c and 2c0c069.

📒 Files selected for processing (5)
  • gitbooks/developing/architecture/tauri-shell.md
  • gitbooks/developing/architecture/tauri-shell.zh-CN.md
  • gitbooks/developing/getting-set-up.md
  • gitbooks/developing/getting-set-up.zh-CN.md
  • scripts/worktree-bootstrap.sh

Comment thread gitbooks/developing/architecture/tauri-shell.md Outdated
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
gitbooks/developing/architecture/tauri-shell.md (1)

189-191: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update CoreProcessHandle description to reflect embedded in-process model.

This section still describes the old sidecar model ("Resolves the openhuman-core executable (staged under binaries/...)"), which contradicts the embedded in-process architecture documented elsewhere (lines 14, 20, 67). Line 20 explicitly states "local builds no longer need a staged openhuman-core-* sidecar under app/src-tauri/binaries/".

📝 Suggested rewrite to align with embedded model
 ### `CoreProcessHandle` (`core_process.rs`)
 
-- Resolves the **`openhuman-core`** executable (staged under `binaries/` or `PATH` / dev layout).
-- Starts or attaches to the core process and exposes its RPC URL (`OPENHUMAN_CORE_RPC_URL`).
+- Manages the embedded core server task lifecycle within the Tauri process.
+- Exposes the core's RPC URL (`OPENHUMAN_CORE_RPC_URL`) and per-process bearer token.
 - Used during app setup in `lib.rs` (`app.manage(core_handle)`).
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@gitbooks/developing/architecture/tauri-shell.md` around lines 189 - 191,
Update the CoreProcessHandle description to reflect the embedded in-process
architecture rather than a sidecar executable: replace the text that says it
"resolves the openhuman-core executable (staged under binaries/ or PATH / dev
layout)" and "starts or attaches to the core process" with wording that
CoreProcessHandle initializes and manages an embedded in-process OpenHuman core
instance, exposes its RPC endpoint (OPENHUMAN_CORE_RPC_URL) to the app, and is
registered during app setup (app.manage(core_handle)); ensure the description
mentions the embedded model and remove any references to staging a separate
openhuman-core-* sidecar.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In `@gitbooks/developing/architecture/tauri-shell.md`:
- Around line 189-191: Update the CoreProcessHandle description to reflect the
embedded in-process architecture rather than a sidecar executable: replace the
text that says it "resolves the openhuman-core executable (staged under
binaries/ or PATH / dev layout)" and "starts or attaches to the core process"
with wording that CoreProcessHandle initializes and manages an embedded
in-process OpenHuman core instance, exposes its RPC endpoint
(OPENHUMAN_CORE_RPC_URL) to the app, and is registered during app setup
(app.manage(core_handle)); ensure the description mentions the embedded model
and remove any references to staging a separate openhuman-core-* sidecar.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: c4f37974-3097-4917-971a-cc34322a52cd

📥 Commits

Reviewing files that changed from the base of the PR and between 2c0c069 and 13bd1a0.

📒 Files selected for processing (1)
  • gitbooks/developing/architecture/tauri-shell.md

@senamakel senamakel merged commit fdd56a8 into tinyhumansai:main May 25, 2026
28 checks passed
@senamakel
Copy link
Copy Markdown
Member

very valid! great PR

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

working A PR that is being worked on by the team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants