Skip to content

refactor: add project application service seam - #99

Merged
xiayh17 merged 36 commits into
YuLab-SMU:mainfrom
xiayh0107:agent/project-application-service-seam
Aug 20, 2026
Merged

refactor: add project application service seam#99
xiayh17 merged 36 commits into
YuLab-SMU:mainfrom
xiayh0107:agent/project-application-service-seam

Conversation

@xiayh0107

@xiayh0107 xiayh0107 commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Summary

  • adds project-scoped ProjectQueryService and ProjectMutationService seams in rho-store;
  • routes existing Run/Problem/Agent/Approval/Evidence/Artifact/Plot/cancellation Tauri paths through the shared services without changing command or response shapes;
  • rejects blank project identity and requires explicit project scope for every mutation; and
  • adds deterministic normal, empty, bounded, rejection, mutation, and two-project scenario coverage.

Stack dependency

This PR is stacked on Phase 2 PR #76 at exact head 12860008381910d8280d277ea1006ab04746b281. It should be rebased onto main after #76 merges; no #76 source is reimplemented here.

Governance

Owning contract: docs/plans/active-2026-08-20-project-application-service-seam-spec.md (APP-SVC1, D2/R2). Raw Store remains the sole persistence authority. No schema, migration, frontend/mock shape, public protocol, new mutation, version, NEWS, or release change.

Local validation

  • cargo test -p rho-store --locked --no-fail-fast: 153 passed;
  • scoped unused/dead-code Clippy enforcement: passed;
  • cargo test -p rho-desktop --locked --no-fail-fast: 204 passed, one existing opt-in Keychain smoke ignored;
  • cargo test --workspace --locked --no-fail-fast: passed;
  • cargo build --workspace --locked: passed;
  • affected Run History, Agent Conversation/concurrency, Evidence, and JS syntax contracts: passed;
  • cargo fmt --all -- --check and git diff --check: passed;
  • rho.bridge: 575 passed; rho.agent: 120 passed.

Hosted validation

Exact source head 69f073bbf00e711f7ae936840fce1528ed0cb12a:

  • Draft Fast run 32361870469: passed;
  • Ready Rust Compatibility run 32362297716: all six macOS/Ubuntu/Windows stable and Rust 1.88 legs passed, including packaged app smoke on every stable leg.

Independent review resolved unscoped Plot clearing, unused wrapper methods, incomplete query/mutation coverage, blank project identity, and stale direct-Store contract assertions.

xiayh0107 and others added 30 commits August 18, 2026 02:06
@xiayh0107
xiayh0107 marked this pull request as ready for review August 20, 2026 11:07
Copilot AI lite review requested due to automatic review settings August 20, 2026 11:07

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot wasn't able to review this pull request because it exceeds the maximum number of lines (20,000). Try reducing the number of changed lines and requesting a review from Copilot again.

@xiayh17
xiayh17 merged commit 9c5b8b4 into YuLab-SMU:main Aug 20, 2026
8 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.

3 participants