-
Notifications
You must be signed in to change notification settings - Fork 3k
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
[HOLD for payment 2023-11-29] [$500] Inconsistency bug - Assign Task - Task description does not remove empty quotes (works fine in private notes) #28342
Comments
Triggered auto assignment to @garrettmknight ( |
Job added to Upwork: https://www.upwork.com/jobs/~01cbe475b72eea075d |
Bug0 Triage Checklist (Main S/O)
|
Triggered auto assignment to Contributor-plus team member for initial proposal review - @robertKozik ( |
ProposalPlease re-state the problem that we are trying to solve in this issue.In task description data is not trimmed What is the root cause of that problem?While saving task description we are not trimming the description here. App/src/pages/tasks/TaskDescriptionPage.js Lines 46 to 53 in f596e35
and App/src/pages/tasks/NewTaskDescriptionPage.js Lines 64 to 67 in f596e35
What changes do you think we should make in order to solve the problem?We need to trim the data before saving like this in TaskDescriptionPage const submit = useCallback(
(values) => {
// Set the description of the report in the store and then call Task.editTaskReport
// to update the description of the report on the server
const editedDescription = parser.replace( values.description.trim());
Task.editTaskAndNavigate(props.report, props.session.accountID, {description: editedDescription});
},
[props],
); and in NewTaskDescriptionPage const onSubmit = (values) => {
const editedDescription = parser.replace( values.description.trim());
Task.setDescriptionValue(editedDescription);
Navigation.goBack(ROUTES.NEW_TASK);
}; What alternative solutions did you explore? (Optional)N/A |
ProposalPlease re-state the problem that we are trying to solve in this issue.Inconsistency bug - Assign Task - Task description does not remove empty quotes What is the root cause of that problem?Because we save origin description (user input). App/src/pages/tasks/TaskDescriptionPage.js Lines 46 to 53 in f596e35
and App/src/pages/tasks/NewTaskDescriptionPage.js Lines 64 to 67 in f596e35
What changes do you think we should make in order to solve the problem?For
For
What alternative solutions did you explore? (Optional) |
ProposalPlease re-state the problem that we are trying to solve in this issue.Description text is saving just as plain text, while it can be displayed as markdown. What is the root cause of that problem?There are 3 steps where it happens:
App/src/pages/tasks/NewTaskDetailsPage.js Lines 64 to 70 in f596e35
App/src/pages/tasks/TaskDescriptionPage.js Lines 46 to 53 in f596e35
App/src/pages/tasks/TaskDescriptionPage.js Lines 45 to 54 in f596e35
What changes do you think we should make in order to solve the problem?We have to parse description field on each of these steps via ExpensiMark and save parsed version of it:
The last thing to take into account is the state of NewTaskDetailsPage.js App/src/pages/tasks/NewTaskDetailsPage.js Lines 44 to 48 in f596e35
Screen.Recording.2023-09-28.at.14.51.57.movWhat alternative solutions did you explore? (Optional)Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job. |
📣 @yurakurets! 📣
|
Contributor details |
✅ Contributor details stored successfully. Thank you for contributing to Expensify! |
ProposalPlease re-state the problem that we are trying to solve in this issue.
What is the root cause of that problem?
when creating a task, it still displays this text in the editing input, which lead to the bug.
What changes do you think we should make in order to solve the problem?
What alternative solutions did you explore? (Optional)
ResultScreencast.from.28-09-2023.20.04.02.webm |
@garrettmknight, @robertKozik Huh... This is 4 days overdue. Who can take care of this? |
Reproduced. @robertKozik can you take a look at these proposals? |
Hi all! Thank you for your proposals! I think we should go with the @DylanDylann proposal as it represents the most complete solution to unify the behaviour with the private notes approach. Other proposals are trying to parse both ways the description, which is in my opinion redundant and resource-consuming operation while saving the value. Selected Proposal: #28342 (comment) 🎀 👀 🎀 C+ reviewed |
Triggered auto assignment to @iwiznia, see https://stackoverflow.com/c/expensify/questions/7972 for more details. |
I don't understand the bug, to me the current behavior is correct. Yes, it is not the same as in other places, but that's not a bug on itself. Are the users prevented from doing an action? Is something actually broken? |
@iwiznia I think this logic should be the same throughout the app so users are not confused. Additionally, if the logic is the same, we can create the util function to display, save, ... this type of input content and reuse it in the future |
I'd agree that this is a clear inconsistency in how the two text areas work and without any reasoning for one to work differently (i.e. why is the text area in a task not removing erroneous pieces when the text composer?). It's a question of standardizing where the behavior should be the same, not whether the app is broken outright. |
@garrettmknight Currently, these are a few components that will remove all the redundant ">":
|
@iwiznia Did you check this #28342 (comment)? |
That links to my own comment. |
@garrettmknight do you have any suggestion for this one? #28342 (comment) |
@iwiznia I think he was referring to this part of your comment:
|
Starting a thread about how we can manage the deploy in slack. |
@iwiznia Based on the discussion in slack channel, should we consider using my suggestion before? #29144 (comment)
|
Huh? If we deploy your change before the backend change is deployed, things will also be broken, no? |
No. I mean that we do not need the BE change |
I am so lost... would that solve the issue, make the behavior consistent with private notes and not require a backend change? |
@iwiznia Yeah, C+ has reviewed and approved this solution before |
Ah ok, if it does all that, then let's do it |
@iwiznia yeah. I will update the PR and ping you review it |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 1.4.1-13 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2023-11-29. 🎊 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:
|
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:
|
Summary of payment:
All paid up. |
@robertKozik can you complete the checklist when you get a chance? |
|
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:
Expected Result:
App should remove greater then signs with no text after it when description is saved like we do throughout the app
Actual Result:
App does remove greater then signs with no text after it when description is saved in task
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Version Number: v1.3.74-2
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
mac.chrome.desktop.description.is.not.resolved.1.mov
Screen_Recording_20230928_152004_New.Expensify.mp4
Ios.Safari.Native.Description.Is.Not.Resolved.1.mp4
android.chrome.description.is.not.fixed.for.quotes.mp4
mac.chrome.desktop.description.is.not.resolved.mov
Recording.1663.mp4
Expensify/Expensify Issue URL:
Issue reported by: @dhanashree-sawant
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1695746974925629
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: