-
Notifications
You must be signed in to change notification settings - Fork 3.2k
[MEDIUM][$250] Start creating optimistic transactionThreadReportID and createdReportActionIDForThread and passing it in HoldRequest #52935
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
Comments
Triggered auto assignment to Contributor-plus team member for initial proposal review - @parasharrajat ( |
@iwiznia, @parasharrajat Whoops! This issue is 2 days overdue. Let's get this updated quick! |
Triggered auto assignment to @muttmuure ( |
Edited by proposal-police: This proposal was edited at 2024-11-28 23:18:57 UTC. ProposalPlease re-state the problem that we are trying to solve in this issue.Start creating optimistic transactionThreadReportID and createdReportActionIDForThread and passing it in HoldRequest What is the root cause of that problem?New Feature - start creating optimistic transactionThread report and created action for the thread when the transaction thread doesn't exist What changes do you think we should make in order to solve the problem?First now that we are not guaranteed to always have a transaction thread we will base our navigation on parentReportID and parentReportActionID params Lines 427 to 430 in 64eaf2f
We should navigate accordingly here
We will update HoldReasonPage here according to the new params App/src/pages/iou/HoldReasonPage.tsx Lines 39 to 47 in 64eaf2f
and then we will pass only the iou parent action from here App/src/pages/iou/HoldReasonPage.tsx Line 56 in 64eaf2f
Then inside putOnHold we will create the transaction thread and created action if the transaction thread report doesn't exist
and also pass the transaction thread report id and created action id as a param here Lines 7959 to 7964 in 64eaf2f
And on more thing is our areHoldRequirementsMet will be false here for our case App/src/pages/home/report/ContextMenu/BaseReportActionContextMenu.tsx Lines 187 to 188 in 64eaf2f
as the calculation depends on the child report of the report action where the context menu is displayed for but in our case there is no transaction thread so no childReport so we need to determine the hold requirements only from the data we get from the report action
What alternative solutions did you explore? (Optional) |
@iwiznia, @parasharrajat, @muttmuure Eep! 4 days overdue now. Issues have feelings too... |
@parasharrajat can you review the proposal please? |
Sure.. |
@iwiznia @parasharrajat @muttmuure this issue was created 2 weeks ago. Are we close to approving a proposal? If not, what's blocking us from getting this issue assigned? Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks! |
@iwiznia, @parasharrajat, @muttmuure Whoops! This issue is 2 days overdue. Let's get this updated quick! |
@parasharrajat have you had a chance to look at the proposal yet? Could you give an ETA for when you can take a look? |
Yes, I reviewed it. Checking a few things, I will update asap. |
Bump @parasharrajat |
Thanks @iwiznia. I will have the next update by tomorrow morning. Fever knocked me down last week so couldn't focus. |
@iwiznia, @JmillsExpensify, @allroundexperts, @FitseTLT Now this issue is 8 days overdue. Are you sure this should be a Daily? Feel free to change it! |
This will get deployed today/tomorrow. @allroundexperts you will need to stop sending the optimistic transactionThreadID in the RequestMoney api request in order for the report to not be created proactively. LMK if it works or you need some help. |
Thanks for the update. Not sure if I'm the one that's supposed to comment to remove the overdue? |
@FitseTLT Can you please handle #52935 (comment)? |
@iwiznia I did try to omit
We will need to create transaction thread optimistically and pass the transactionThreadReportID and createdReportActionIDForThread as param in both open report and hold API. But we will need to know whether a transaction thread linked to the iou action exists or not because the inexistence of the transaction thread report sometimes can be due to the inavailability of it in onyx but we shouldn't create the transaction thread in that case. So can we add some prop in the iou parent action of the transaction thread to indicate that it is not created yet, sth like |
Oh wait, we had to revert the PR I mentioned because it caused issues and I haven't sent the new PR again. |
The new PR is up for review |
PR up for review |
Are any of these held on another?
For this issue, what's the PR we're waiting to merge? Thx |
We are waiting for this to get deployed https://github.com/Expensify/Web-Expensify/pull/45944 |
@FitseTLT have you been able to test yet? |
yes, it should be
Make sure you are in the latest code (which should not create an optimistic thread when calling RequestMoney) and then put the transaction on hold. |
I think not? |
This issue has not been updated in over 15 days. @iwiznia, @JmillsExpensify, @allroundexperts, @FitseTLT eroding to Monthly issue. P.S. Is everyone reading this sure this is really a near-term priority? Be brave: if you disagree, go ahead and close it out. If someone disagrees, they'll reopen it, and if they don't: one less thing to do! |
@FitseTLT Do you have an update here? |
Good question. I agree that it'd be good to pick this back up. |
We need to wait for #58828 |
We are about to change some of our backend code to not create the transaction thread reports when we create a new money request.
In order to do that, we need to ensure that on the action
IOU.putOnHold
, we start creating the data for the transaction thread report and its created action optimistically (if the data does not exist yet), the same way we do it for the requestMoney action and pass the transactionThreadReportID and createdReportActionIDForThread to the API request.I also see that the API.write call for putOnHold is not using the
HOLD_MONEY_REQUEST
constant, so let's fix that too.Issue Owner
Current Issue Owner: @allroundexpertsUpwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: