Move GenericCloudObject to warp_server_client.#11115
Conversation
faa1e56 to
95879be
Compare
0b75331 to
a4c4a9f
Compare
cd81967 to
6c5185b
Compare
29909fa to
00d7ceb
Compare
|
I'm starting a first review of this pull request. You can view the conversation on Warp. I completed the review and no human review was requested for this pull request. Comment Powered by Oz |
There was a problem hiding this comment.
Overview
This PR moves GenericCloudObject and portable upsert parameter handling into warp_server_client, while keeping app-local lookup helpers, persistence events, queue behavior, and UI integrations in the app crate. The changed call sites appear to preserve the previous server update, conflict, lookup, and persistence behavior.
Concerns
- No blocking correctness, spec-alignment, or security concerns found in the annotated diff.
Verdict
Found: 0 critical, 0 important, 0 suggestions
Approve
Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).
Powered by Oz
00d7ceb to
dcd5b81
Compare
56de057 to
840dafb
Compare
dcd5b81 to
215b603
Compare
840dafb to
211b3f2
Compare
| // Callers who want to update the model need to call set_model to update the | ||
| // entire model atomically. | ||
| model: Arc<M>, | ||
| fn get_all(app: &AppContext) -> Vec<Self> { |
211b3f2 to
aaf4b43
Compare
d772cca to
4e61d7c
Compare
aaf4b43 to
afc2903
Compare
4e61d7c to
3766807
Compare
afc2903 to
3083ebc
Compare
3766807 to
dc408d2
Compare
Pull request was closed
|
I'm starting a first review of this pull request. You can view the conversation on Warp. I completed the review and no human review was requested for this pull request. Comment Powered by Oz |
There was a problem hiding this comment.
Overview
This PR moves the portable GenericCloudObject implementation and upsert parameter payload into warp_server_client, leaving app-specific lookup helpers, persistence events, and runtime behavior in the app crate. It updates the cloud object persistence/event APIs and call sites to pass portable upsert parameters, and adds app-local lookup traits for existing type-alias ergonomics.
Concerns
No blocking correctness, security, or spec-alignment concerns were found in the annotated diff. No approved spec context was available for deeper spec validation.
Verdict
Found: 0 critical, 0 important, 0 suggestions
Approve
Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).
Powered by Oz

Description
Moves
GenericCloudObjectintowarp_server_clientwhile keeping app-local cloud object behavior inwarp.The upstream type now owns the portable data/container behavior: model accessors, constructors, server update/conflict handling, and portable upsert params. The app crate continues to own
CloudObject,CloudModelType, persistence events, queue behavior, UI/Drive integration, and other runtime-specific logic.This also adds app-local lookup extension traits so type aliases can keep readable calls like
CloudAmbientAgentEnvironment::get_all(ctx),CloudScheduledAmbientAgent::get_by_id(...), andCloudMCPServer::get_by_uuid(...)without duplicating helper functions or making the upstream crate depend onAppContext/CloudModel.Testing
Validated on the stack tip after Phase 3:
cargo fmt --manifest-path /Users/david/src/warp/Cargo.toml --allcargo check --manifest-path /Users/david/src/warp/Cargo.toml -p warp_server_clientcargo check --manifest-path /Users/david/src/warp/Cargo.toml -p warpcargo check --manifest-path /Users/david/src/warp/Cargo.toml -p warp --testsgit --no-pager diff --checkCo-Authored-By: Oz oz-agent@warp.dev