-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add retry mechanism for partially failed virtual card order #291
Comments
I think reading from local storage is ideal, then from the chain, generally speaking for these sorts of things. |
I think this problem will be solved once we implement reward rollup and permits will be generated on demand. For virtual cards this means when the virtual card is created, a entry in the DB will be created but if there's an error creating a virtual card, you don't write to the DB and everything is as it was. The user can retry the operation until it successfully creates a virtual card. |
What I see is that we are probably going to introduce the virtual card feature before the rollup feature. |
Can someone dm me sandbox API keys? I can't register in Reloadly since I don't have a business email. |
/start |
@zugdev the deadline is at Sat, Oct 19, 4:15 AM UTC |
I think you can use any email provider like proton mail |
It's https://www.reloadly.com/ right? |
Im sure that you can use your own domain's email then. Setting up email forwarding is simple on cloudflare and google domains. |
/start |
! This issue is already assigned. Please choose another unassigned task. |
@gentlementlegen disqualify check |
You can always check the logs: https://github.com/ubiquity-os-marketplace/daemon-disqualifier/actions/runs/11548428245/job/32139825686 |
Can you fix this signature thing across all of our plugins? |
@whilefoo pointed out that it could potentially be because of the use of both the beta and the release that would require different signatures. |
Do you guys have a solution in mind? |
If that is indeed the reason we need to make proper use of environments for the plugins and secrets. I need to check if that's the root cause. |
We could modify the SDK to verify the signature for either prod or dev bot |
+ Evaluating results. Please wait... |
This comment has been minimized.
This comment has been minimized.
@0x4007 |
That was before the limits were implemented. And yes there was a brief period of time that the specification rewards algorithm was wrong. |
@0x4007 |
I don't understand these logs but seems overly verbose to dump the source code and all those arrays. |
|
Adding the source map is definitely a good idea for debugging. |
|
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Task | 1 | 150 |
Issue | Specification | 1 | 100.32 |
Issue | Comment | 1 | 1.83 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
In the virtual card feature, we have two parts in a single trans… | 33.44content: content: p: score: 0 elementCount: 17 ol: score: 1 elementCount: 1 li: score: 0.5 elementCount: 9 ul: score: 1 elementCount: 2 a: score: 5 elementCount: 2 result: 17.5 regex: wordCount: 390 wordValue: 0.1 result: 15.94 | 1 | 3 | 100.32 |
What I see is that we are probably going to introduce the virtua… | 1.22content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 19 wordValue: 0.1 result: 1.22 | 0.5 | 3 | 1.83 |
[ 6.684 UUSD ]
@0x4007
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 9 | 3.66 |
Review | Comment | 5 | 3.024 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
I think reading from local storage is ideal, then from the chain… | 1.22content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 19 wordValue: 0.1 result: 1.22 | 1 | 3 | 3.66 |
I think you can use any email provider like proton mail | 0.77content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 11 wordValue: 0.1 result: 0.77 | 0 | 3 | 0 |
Im sure that you can use your own domain's email then. Setting u… | 1.44content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 23 wordValue: 0.1 result: 1.44 | 0 | 3 | 0 |
@gentlementlegen disqualify check | 0.25content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 3 wordValue: 0.1 result: 0.25 | 0 | 3 | 0 |
Can you fix this signature thing across all of our plugins? | 0.77content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 11 wordValue: 0.1 result: 0.77 | 0 | 3 | 0 |
Do you guys have a solution in mind? | 0.59content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 8 wordValue: 0.1 result: 0.59 | 0 | 3 | 0 |
That was before the limits were implemented. And yes there was a… | 1.44content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 23 wordValue: 0.1 result: 1.44 | 0 | 3 | 0 |
I don't understand these logs but seems overly verbose to dump t… | 1.22content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 19 wordValue: 0.1 result: 1.22 | 0 | 3 | 0 |
Adding the source map is definitely a good idea for debugging. | 0.77content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 11 wordValue: 0.1 result: 0.77 | 0 | 3 | 0 |
Code seems fine. What's the best way to test it? | 0.77content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 11 wordValue: 0.1 result: 0.77 | 0.2 | 3 | 0.462 |
Code looks fine | 0.25content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 3 wordValue: 0.1 result: 0.25 | 0.1 | 3 | 0.075 |
Perhaps you should always return a response | 0.52content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 7 wordValue: 0.1 result: 0.52 | 0.8 | 3 | 1.248 |
Shouldn't we default to the international one | 0.59content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 8 wordValue: 0.1 result: 0.59 | 0.7 | 3 | 1.239 |
```suggestionlet signedMessage;``` | 0content: content: {} result: 0 regex: wordCount: 0 wordValue: 0.1 result: 0 | 0.6 | 3 | 0 |
[ 13.14 UUSD ]
@whilefoo
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 2 | 13.14 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
I think this problem will be solved once we implement reward rol… | 3.88content: content: p: score: 0 elementCount: 2 result: 0 regex: wordCount: 74 wordValue: 0.1 result: 3.88 | 1 | 3 | 11.64 |
We could modify the SDK to verify the signature for either prod … | 1content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 15 wordValue: 0.1 result: 1 | 0.5 | 3 | 1.5 |
[ 4.86 UUSD ]
@gentlementlegen
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 5 | 4.86 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
You can always check the logs: https://github.com/ubiquity-os-ma… | 5.46content: content: p: score: 0 elementCount: 1 a: score: 5 elementCount: 1 result: 5 regex: wordCount: 6 wordValue: 0.1 result: 0.46 | 0 | 3 | 0 |
@whilefoo pointed out that it could potentially be because of th… | 1.49content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 24 wordValue: 0.1 result: 1.49 | 0.5 | 3 | 2.235 |
If that is indeed the reason we need to make proper use of envir… | 1.75content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 29 wordValue: 0.1 result: 1.75 | 0.5 | 3 | 2.625 |
@0x4007 `text-conversation-rewards` configuration has to… | 5.59content: content: p: score: 0 elementCount: 2 a: score: 5 elementCount: 1 result: 5 regex: wordCount: 8 wordValue: 0.1 result: 0.59 | 0 | 3 | 0 |
`node.js` dumps the minified code because there is no so… | 0.83content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 12 wordValue: 0.1 result: 0.83 | 0 | 3 | 0 |
[ 44.712 UUSD ]
@rndquu
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Review | Comment | 2 | 44.712 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
Works fine | 0.18content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 2 wordValue: 0.1 result: 0.18 | 0.1 | 3 | 0.054 |
@EresDev 1. Could you add a unit test for a successfull "parti… | 16.54content: content: p: score: 0 elementCount: 3 ol: score: 1 elementCount: 1 li: score: 0.5 elementCount: 2 a: score: 5 elementCount: 2 result: 12 regex: wordCount: 89 wordValue: 0.1 result: 4.54 | 0.9 | 3 | 44.658 |
Sorry about all the spam, I forgot that this repo had a different configuration and wouldn't understand why the changes wouldn't work, it is now up to date. |
In the virtual card feature, we have two parts in a single transaction to mint a virtual card.
The problem is that the transaction isn't atomic because each step happens in a different system. Step-2 can fail while still leaving the permit amount in the treasury. Why would step-2 fail? There could be one of the many reasons.
Currently, the solution to this problem is manual. It is either a manual refund or manual resending of the card order request to
/post-order
with some parameters (productId, tx hash, country).We can improve this by implementing one of the following solutions.
/post-order
I am inclined towards resending the mint request. One problem is that
/post-order
needs the transaction hash of the permit transfer to the treasury. Sometimes you will have it, and you can store it in the cookies/local storage. But sometimes you will not have it and you will have to read it either from blockchain or ask the user to manually insert the transaction hash to retry minting. I think you can read it from blockchain by looking into permit2 eventsThe goal of this issue is to implement a mechanism to resend the mint request or a better solution if you can think of one.
Since the best-picked virtual card can change in this duration, a better option is to rename the mint button to "Retry Mint" and let the user click first so that user can see they are ordering a different card now.
Please note that the virtual cards feature is present in
beta
branch at the moment. But it can move to development branch anytime. So, keep an eye on that and open a PR accordingly.The text was updated successfully, but these errors were encountered: