Expensify / App

Welcome to New Expensify: a complete re-imagination of financial collaboration, centered around chat. Help us build the next generation of Expensify by sharing feedback and contributing to the code.
https://new.expensify.com
MIT License
3.34k stars 2.77k forks source link

[HOLD for payment 2023-10-10] [$1000] No activity yet appears in task item of search RHN. #26679

Closed kavimuru closed 10 months ago

kavimuru commented 1 year ago

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Action Performed:

  1. Assign a task.
  2. Click on Mark as done.
  3. Send a message.
  4. Delete the message.
  5. Open search RHN by pressing CRTL+K.
  6. Observe the created task item in search RHN.

    Expected Result:

    No activity yet appears in task item of search RHN.

    Actual Result:

    No activity yet should not appear.

Workaround:

Can the user still use Expensify without this being fixed? Have you informed them of the workaround?

Platforms:

Which of our officially supported platforms is this issue occurring on?

Version Number: 1.3.62-4 Reproducible in staging?: y Reproducible in production?: y If this was caught during regression testing, add the test name, ID and link from TestRail: Email or phone of affected tester (no customers): Logs: https://stackoverflow.com/c/expensify/questions/4856 Notes/Photos/Videos: Any additional supporting documentation

https://github.com/Expensify/App/assets/43996225/176768c0-158e-4bfc-88f1-8ae7098977ef

https://github.com/Expensify/App/assets/43996225/334caa94-18a1-4cc1-964f-80ef05e9d162

Expensify/Expensify Issue URL: Issue reported by: @oleksandr-pantsyr Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1692977375401449

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01dac65c2c994b81e0
  • Upwork Job ID: 1699721930034528256
  • Last Price Increase: 2023-09-20
  • Automatic offers:
    • rojiphil | Contributor | 26875557
Issue OwnerCurrent Issue Owner: @rushatgabhane
melvin-bot[bot] commented 1 year ago

Triggered auto assignment to @bfitzexpensify (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

melvin-bot[bot] commented 1 year ago

Bug0 Triage Checklist (Main S/O)

bfitzexpensify commented 1 year ago

Reproduced, sending this external

melvin-bot[bot] commented 1 year ago

Job added to Upwork: https://www.upwork.com/jobs/~01dac65c2c994b81e0

melvin-bot[bot] commented 1 year ago

Current assignee @bfitzexpensify is eligible for the External assigner, not assigning anyone new.

melvin-bot[bot] commented 1 year ago

Triggered auto assignment to Contributor-plus team member for initial proposal review - @Santhosh-Sellavel (External)

DylanDylann commented 1 year ago
Screenshot 2023-09-07 at 17 09 45

The BE return lastMessagetext is '' after deleting a message. We should fix it in BE

Santhosh-Sellavel commented 1 year ago

@thienlnam Is this valid bug? Your thoughts seems like backend?

Santhosh-Sellavel commented 1 year ago

I am unassigning due to low bandwidth, if C+ assistance required assign a new C+ by reapplying External label

cc: @bfitzexpensify

thienlnam commented 1 year ago

Hmm yeah looks like a BE update is needed for this specific scenario

melvin-bot[bot] commented 1 year ago

@bfitzexpensify Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

melvin-bot[bot] commented 1 year ago

@bfitzexpensify Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

bfitzexpensify commented 1 year ago

OK, adding the engineering label in that case

melvin-bot[bot] commented 1 year ago

Triggered auto assignment to @Gonals (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

Gonals commented 1 year ago

Oh, nice catch! Yeah, this looks like a Backend change

Gonals commented 1 year ago

Nope! Backend is working correctly (and the search element eventually updates to the correct message), and we are optimistically setting it to the correct value too. The issue is that we are not telling the search option that they need to update the element. Back to external!

melvin-bot[bot] commented 1 year ago

Triggered auto assignment to @MitchExpensify (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

melvin-bot[bot] commented 1 year ago

Triggered auto assignment to Contributor-plus team member for initial proposal review - @mananjadhav (External)

bfitzexpensify commented 1 year ago

Awaiting proposals

melvin-bot[bot] commented 1 year ago

πŸ“£ It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? πŸ’Έ

bfitzexpensify commented 1 year ago

This has only been external for 3 days, will wait until mid-next week before considering a change to the bounty here

melvin-bot[bot] commented 1 year ago

@Gonals @rushatgabhane @bfitzexpensify 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!

Gonals commented 1 year ago

@bfitzexpensify said mid-week, Melvin!

melvin-bot[bot] commented 12 months ago

Upwork job price has been updated to $1000

bfitzexpensify commented 12 months ago

No proposals after a week, I've doubled the bounty on this one

zukilover commented 12 months ago

Proposal

Please re-state the problem that we are trying to solve in this issue.

No activity yet appears in task item of search RHN

What is the root cause of that problem?

In case of a report comment deletion, the report last action will only be shown in RHN if it is a pending remove action: https://github.com/Expensify/App/blob/4c207ec07ce4d0b3ca3cc4a6f90b02524b4b440f/src/libs/OptionsListUtils.js#L403-L410

What changes do you think we should make in order to solve the problem?

Add another condition to accommodate report comment deletion (without pending moderation) as well, .e.g.:

    if (ReportActionUtils.isPendingRemove(lastNonWhisper) || ReportActionUtils.isDeletedAction(lastNonWhisper)) {
            const latestVisibleAction =
                _.find(
                    allSortedReportActions[report.reportID],
                    (action) => ReportActionUtils.shouldReportActionBeVisibleAsLastAction(action) && !ReportActionUtils.isCreatedAction(action),
                ) || {};
            lastMessageTextFromReport = lodashGet(latestVisibleAction, 'message[0].text', '');
        }

What alternative solutions did you explore? (Optional)

N/A

rojiphil commented 12 months ago

Proposal

Please re-state the problem that we are trying to solve in this issue.

The Search page in RHN displays the subtitle/alternate text as No Activity yet for Task Item instead of showing the Task Status message.

What is the root cause of that problem?

The Search Page depends on getLastMessageTextForReport to fetch the last message text for display as subtitle/alternate text as shown here. Now, when the Task Status message is the only message left in the Task Report, lastMessageText will be empty which will set the text as No activity yet here. This is the reason why this problem occurs

What changes do you think we should make in order to solve the problem?

To solve the problem, we can ensure that the correct message is sent back for Task Status messages within getLastMessageTextForReport function here like this: Note: We also need to set the message for reopened and cancelled tasks as below:

    } else if (lastActionName === CONST.REPORT.ACTIONS.TYPE.TASKCOMPLETED || lastActionName === CONST.REPORT.ACTIONS.TYPE.TASKREOPENED || lastActionName === CONST.REPORT.ACTIONS.TYPE.TASKCANCELLED) {
        lastMessageTextFromReport = lodashGet(lastReportAction, 'message[0].text', '');
    }

What alternative solutions did you explore? (Optional)

bfitzexpensify commented 12 months ago

Couple of proposals ready for review @rushatgabhane

melvin-bot[bot] commented 11 months ago

@Gonals @rushatgabhane @bfitzexpensify this issue is now 3 weeks old. There is one more week left before this issue breaks WAQ and will need to go internal. What needs to happen to get a PR in review this week? Please create a thread in #expensify-open-source to discuss. Thanks!

melvin-bot[bot] commented 11 months ago

@Gonals, @rushatgabhane, @bfitzexpensify Whoops! This issue is 2 days overdue. Let's get this updated quick!

bfitzexpensify commented 11 months ago

Friendly bump @rushatgabhane

rushatgabhane commented 11 months ago

@Gonals I like @rojiphil's proposal. They explained the root cause correctly

melvin-bot[bot] commented 11 months ago

πŸ“£ @rushatgabhane Please request via NewDot manual requests for the Reviewer role ($1000)

melvin-bot[bot] commented 11 months ago

πŸ“£ @rojiphil πŸŽ‰ An offer has been automatically sent to your Upwork account for the Contributor role πŸŽ‰ Thanks for contributing to the Expensify app!

Offer link Upwork job Please accept the offer and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review πŸ§‘β€πŸ’» Keep in mind: Code of Conduct | Contributing πŸ“–

melvin-bot[bot] commented 11 months ago

πŸ“£ @oleksandr-pantsyr We're missing your Upwork ID to automatically send you an offer for the Reporter role. Once you apply to the Upwork job, your Upwork ID will be stored and you will be automatically hired for future jobs!

oleksandr-pantsyr commented 11 months ago

@bfitzexpensify @rushatgabhane I am a newbie. I've sent a proposal to Upwork job. My Upwork ID was stored? I've not an offer yet. Could you tell me what I should for offer?

situchan commented 11 months ago

@oleksandr-pantsyr you need to submit proposal on upwork for the first issue. This is one time process. From next issues you're getting assigned, Melvin will send upwork offer automatically.

oleksandr-pantsyr commented 11 months ago

@situchan thank you for responding. I've already sent my proposal to this job.

Then what do I need to do? melvin-bot will send an offer to me in Upwork again?

rushatgabhane commented 11 months ago

@rojiphil let's do this! lemme know when you can raise a PR

situchan commented 11 months ago

@oleksandr-pantsyr as I said, automatic offer is from next issues. For this one, BZ member (@bfitzexpensify) will hire you manually.

rojiphil commented 11 months ago

@rojiphil let's do this! lemme know when you can raise a PR

@rushatgabhane Working on this now. PR should be ready in the next 3-4 hours.

rojiphil commented 11 months ago

@rushatgabhane PR is ready for review. Kindly review.

melvin-bot[bot] commented 11 months ago

Based on my calculations, the pull request did not get merged within 3 working days of assignment. Please, check out my computations here:

On to the next one πŸš€

melvin-bot[bot] commented 11 months ago

Reviewing label has been removed, please complete the "BugZero Checklist".

melvin-bot[bot] commented 11 months ago

The solution for this issue has been :rocket: deployed to production :rocket: in version 1.3.76-6 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:

If no regressions arise, payment will be issued on 2023-10-10. :confetti_ball:

After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.

For reference, here are some details about the assignees on this issue:

As a reminder, here are the bonuses/penalties that should be applied for any External issue:

melvin-bot[bot] commented 11 months ago

BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

bfitzexpensify commented 11 months ago

Switching this to daily so I'm aware of it and action it on 10/10

bfitzexpensify commented 11 months ago

Payment due on Tuesday.

bfitzexpensify commented 11 months ago

Payment due tomorrow

rojiphil commented 11 months ago

Payment due tomorrow

@bfitzexpensify @rushatgabhane Wanted to check if this qualifies for bonus payment as, I think, the issue got fixed before 3 days. It was just that the final approval and merger from internal team member took some extra time. What are your thoughts?

Here are the timeline details that I could gather: Work Started: Sept. 26, 8:47 AM, GMT+5:30 link Work Completed: Sept. 28, 1:41 PM, GMT+5:30 link Time Taken: Approximately 2 days 5 hours.