more cart
Build and Publish / BuildAndDeployArm64 (push) Failing after 6s
Build and Publish / BuildAndDeployAmd64 (push) Failing after 4s

This commit is contained in:
2026-07-01 22:11:37 +02:00
parent 1c97a4bdb0
commit 26fd6dc970
23 changed files with 1717 additions and 250 deletions
+20
View File
@@ -105,6 +105,25 @@ message SetCartType {
CartType type = 1;
}
// PushToken is a generic, provider-agnostic push-delivery target. The cart layer
// only stores what it was given — actual delivery (FCM, APNs, Web Push) is the
// notifier's job (see pkg/cart/recovery.LoggingNotifier for the v0 contract).
//
// Platform is free-form (e.g. "fcm", "apns", "webpush") so callers can record
// multiple devices per cart without forcing a schema decision here.
message PushToken {
string platform = 1;
string token = 2;
}
// SetRecoveryContact attaches the contact bundle used by the abandoned-cart
// recovery flow. PUT-style: replaces the entire contact in one event — empty
// strings or empty token lists are persisted as "no contact".
message SetRecoveryContact {
string email = 1;
repeated PushToken push_tokens = 2;
}
message Mutation {
oneof type {
ClearCartRequest clear_cart = 1;
@@ -120,6 +139,7 @@ message Mutation {
RemoveVoucher remove_voucher = 21;
UpsertSubscriptionDetails upsert_subscription_details = 22;
SetCartType set_cart_type = 23;
SetRecoveryContact set_recovery_contact = 24;
}
}