Skip to content

Move integration runtime helpers out of core#695

Merged
limityan merged 1 commit into
GCWing:mainfrom
limityan:yanzhn/refactor
May 13, 2026
Merged

Move integration runtime helpers out of core#695
limityan merged 1 commit into
GCWing:mainfrom
limityan:yanzhn/refactor

Conversation

@limityan
Copy link
Copy Markdown
Collaborator

Summary

  • Update the core decomposition docs to compress the remaining work into five reviewable PRs, with lower-risk owner-crate moves earlier and high-risk runtime/feature-shape decisions deferred behind explicit guardrails.
  • Move remote-SSH workspace registry ownership into bitfun-services-integrations::remote_ssh::RemoteWorkspaceRegistry while keeping bitfun-core as the product assembly wrapper for local assistant path guarding and SSH/file/terminal manager handles.
  • Move announcement state persistence into bitfun-services-integrations::announcement::AnnouncementStateStore, preserving the existing core PathManager constructor and error mapping through a compatibility wrapper.
  • Add boundary checks and owner-crate contract tests so future refactors do not silently move persistence or registry logic back into core.

Functional impact

This is intended to be behavior-preserving. The PR does not move SSH channel/SFTP/PTY execution, remote-connect runtime, MCP dynamic tools, ToolUseContext, concrete tool implementations, miniapp/function-agent runtime, agent registry, or product feature assembly.

Core still performs the local assistant workspace guard before remote path resolution. Remote workspace ambiguous-root handling, active connection hinting, legacy state snapshot shape, announcement load fallback, and announcement save semantics are covered by tests after the ownership move.

Validation

  • node scripts/check-core-boundaries.mjs
  • $env:BITFUN_BOUNDARY_CHECK_SELF_TEST='1'; node scripts/check-core-boundaries.mjs
  • rustfmt --edition 2021 --check <touched rust files>
  • git diff --check -- <pr files>
  • cargo test -p bitfun-services-integrations --features "remote-ssh announcement file-watch"
  • cargo test -p bitfun-core remote_workspace -- --nocapture
  • cargo check -p bitfun-services-integrations --features product-full
  • cargo test -p bitfun-services-integrations --features product-full
  • cargo tree -p bitfun-services-integrations --no-default-features --depth 1 --edges features
  • cargo check --workspace
  • cargo test --workspace

Note: the workspace checks still report the existing bitfun-cli unused Read import warning in src/apps/cli/src/ui/theme.rs; this PR does not touch that file.

@limityan limityan merged commit 12079c6 into GCWing:main May 13, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant