Bug Bash Irrigation Prescription Release
Bug Bash Fundamentals
What is a bug bash?
It’s a collaborative event where the whole team, no matter what their role is, comes together to try to “break” the application in creative ways ahead of a release. The goal is to find as many bugs as possible in a short period of time, and since every person in the team will have their own unique perspective and use the application in different ways, there are better chances of uncovering issues, defining how severe they are and if needed fixing them ahead of the release. It’s also a great opportunity for people to spend some time familiarizing themselves with the application and putting themselves in the shoes of one of our users. And last but not least, breaking things can actually be fun! By doing bug bashes often, we’re cultivating a blame-free culture where we take bugs as a chance to bond as a team, learn and improve.
How do I participate?
If you’re willing to collaborate with this bug bash, please write your name down in the Participants section. If possible add details about what language(s) you’re using when testing the app, as well as which user role(s) you’re logging in as. This will help us know if there are any languages or roles not currently being covered by anyone.
Read through the scope of what we’re testing in the Scope section. The scope will usually be defined based on what kind of changes we are pushing out on the upcoming release and it’s a guidance on which are the main things to keep an eye on. That being said, if you do find any bugs that are unrelated to the scope, feel free to report them anyway.
If the bug bash is done synchronously, there’ll be a meeting where we all come together and test at the same time with a time box. If it’s done asynchronously, we’ll aim to have the session open for enough time that people in different timezones are able to participate. In that case, feel free to participate whenever you can and have the time and to time box depending on what your schedule looks like. Everything helps, so even if you only have limited time to test, you might discover something that nobody else has found before. Information on the timing of the meeting or asynchronous session can be found in the Session details section
What do I do if I find a bug?
First off, congratulations on finding it! To report the bug, head over to the Bugs section and add a new row in the table. The row should include your name and a brief description of the bug, on the Details field please add as much information as possible. Please provide reproduction steps and expected/actual behavior, and if you have the time, screenshots or video recordings of what you encountered will be extremely helpful. You don’t need to fill out the Pre-existing, Priority or Blocker fields as those will be filled out once the session is over.
If you spot a bug and you see someone else has already reported it and it’s on the table, you can go ahead and just add your name to the “Also seen by” column to mark that the bug is encountered frequently, without having to write down all the details again.
What happens after the bug bash?
Once the bug bash session is over, the team will go over the list of bugs that were found and prioritize them. For each issue, we’ll try to answer these three questions:
Was this bug caused by the change we’re aiming to push out on this release, or does it currently exist in production?
How severe and how frequent is this bug, or in other words, what’s the priority for fixing it?
Should this bug block the upcoming release?
No matter the result, if the issue found is something we’d like to fix eventually, we’ll create the corresponding ticket in Jira and add it to the Backlog. If we come to the conclusion that one or more bugs are actually blocking the upcoming release, we’ll add those tickets to the current sprint and give them the highest priority. If no bugs are found that are blocking, we’ll proceed with the release process as normal and work on the reported issues in future sprints depending on their priority.
Participants
Name | Language(s) | User role(s) |
|---|---|---|
E.g.: @Denis Dovganyuk | E.g.: Spanish, English | E.g.: Farm Owner, Farm Worker |
@Sayaka Ono | English | Farm Owner, Farm Worker |
@Joyce Sato-Reinhold | English | Extension Officer, Farm Owner |
@Denis Dovganyuk | English | Farm Owner , Farm Worker |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Scope
https://lite-farm.atlassian.net/browse/LF-4759
This bug bash will primarily focus on testing the new features introduced in the release, with particular emphasis on the ability to add an irrigation prescription.
In addition to feature testing, this release also includes a fix for an existing issue: LF-3134. As a result, a full regression is required.
Regression Scope:
1. Task Creation and Completion
Confirm that tasks can still be created successfully.
Complete created tasks and verify that they update as expected.
Validate that all task-related information is stored correctly.
Test this across various task types (e.g., planting, harvesting, irrigation, etc.).
2. Completing Tasks from Notifications
Ensure that tasks can be completed directly from in-app notifications.
Check that task status updates correctly after completion via notifications.
3. Abandoning and Deleting Tasks
Confirm that you can abandon a task.
Confirm that you can delete a task.
Validate that these actions reflect accurately in the task list and activity logs.
4. Completing Tasks During Creation
Test completing a task immediately upon creation (e.g., quick log scenarios).
Ensure that the task is marked as complete and stored correctly.
Please ensure all these areas are thoroughly tested to validate both the new functionality and the integrity of existing features.
Purpose of the Release:
This update enables users to create irrigation prescriptions on their farms, review existing prescriptions, and receive daily notifications about new irrigation recommendations—enhancing decision-making and farm water management.
User Stories
As a LiteFarm user (Farm Manager, Farm Owner, Farm Worker, or Extension Officer), I want to:
Receive Notifications for New Irrigation Prescriptions
Ensure that users receive daily notifications when a new irrigation prescription is available.
LF-4762
Approve an Existing Irrigation Prescription
Ensure that users can approve newly available irrigation prescriptions.
LF-4761
View and Access Latest Approved Irrigation Prescriptions
Ensure that the most recent and approved irrigation prescriptions are clearly displayed and easily accessible.
LF-4760
Create an Irrigation Task Based on an Irrigation Prescription
Ensure that users can create irrigation tasks associated with a selected irrigation prescription.
LF-4763
Download Irrigation Prescription Files
Ensure that users can download the irrigation prescription file when viewing a created irrigation task.
LF-4763
Farm Worker Access and Permissions
Ensure that Farm Workers can view irrigation prescription files and are also able to approve irrigation prescriptions.
Known Issues
https://lite-farm.atlassian.net/browse/LF-4228 Bug on creating + then immediately completing a cleaning or pest control task
Session Details
Synchronous or asynchronous? | Asynchronous |
|---|---|
When? |
|
Where to test? |
Usability Suggestions:
This section is where you can add your suggestions for improvements for the UX that are not faulty behavior or bugs, but that we’ll take into accout for future iterations
Reporter | Description | Details | Pre-existing? | Priority | Also seen by |
|---|---|---|---|---|---|
E.g.: @Denis Dovganyuk | E.g.: The Upload button is not clickable | E.g.: Repro steps
Expected Should navigate to the Google page to choose an account Actual Nothing happens Screenshots/videos
| E.g.: No | E.g.: High | E.g. @Denis Dovganyuk |
@Joyce Sato-Reinhold | If you create a harvest task on two crops and then follow the “already completed” flow, there is no way to tell which of the two harvest tasks you are completing | Repro steps
Expected You will be allowed to complete both created tasks, either at the same time or sequentially.
Actual You will complete one of the two harvest tasks you created, but there is zero indication which of the harvest tasks it is. You have to fill out the flow not knowing which crop you are referring to. The other harvest task is untouched
| I think so | @Divya Chayanam |
|
@Sayaka Ono |
| Repro steps
Expected The buttons don’t overlap. Actual The “Clear all” button overlaps the “Continue” button. Screenshots/videos
| No - Regression | Med WANT TO FIX (non-blocking) | @Denis Dovganyuk |
@Joyce Sato-Reinhold | Notifications view overrun with irrigation prescription notifications |
|
| Not a priority at this time
Deletion system for old notifications ideal for the future (> 30 notification / > 30 days) cleaned up |
|
@Denis Dovganyuk | It is not quite clear how you are going to override Wage
@Denis Dovganyuk could you please create a separate ticket for the fact that users can’t interact with wage override (view it or change it) at complete. Please mention the user requests you have gotten about this. | Environment : Beta and APP Actual Result:
| Yes( it exists for several releases and sometimes users ask the question about wage, they may think that this is a salary for a task ) not in hours. | High - Please restore the unit / hour to this view
Non-blocking but high priority |
|
|
|
|
|
|
|
|
|
|
|
|
|
Regression testing
Regression testing ensures that recent code changes have not negatively impacted existing functionality. It involves testing key features to identify any unexpected issues and maintain software stability..
.
Bug Reports
Reporter | Description | Details | Pre-existing? | Priority | Blocker? | Also seen by |
|---|---|---|---|---|---|---|
E.g.: @Anto Sgarlatta | E.g.: The Save button is disabled. | E.g.: Repro steps
Expected Should navigate to the Google page to choose an account Actual Nothing happens Screenshots/videos
| E.g.: No | E.g.: High | E.g.: Yes | E.g. @Joyce Sato-Reinhold |
@Denis Dovganyuk | https://lite-farm.atlassian.net/browse/LF-4898 | Can’t override a harvest task quantity with 0 (or product quantity in cleaning or pest control). | Yes |
| Non-blocking |
|
@Sayaka Ono | Cannot complete animal movement task | Repro steps
Expected The task is completed. Actual Fail to complete the task. The API returns a model validation error. {
"error": {
"name": "ValidationError",
"type": "ModelValidation",
"data": {
"animal_movement_task.purpose_relationships[0].other_purpose": [
{
"message": "must NOT have fewer than 1 characters",
"keyword": "minLength",
"params": {
"limit": 1
}
}
]
},
"statusCode": 400,
"level": "info",
"service": "user-service",
"error": {
"message": "animal_movement_task.purpose_relationships[0].other_purpose: must NOT have fewer than 1 characters"
}
}
} | No | High | No-Blocking |
|
@Joyce Sato-Reinhold | Application depths are 10x higher on a VRI prescription field than the same farm’s URI field on the same day | [ESci bug?] Steps to Repro
Expected Only a few km of distance, so application depths expected to be comparable. Actual | No |
| Non-blocking
We are okay with releasing even if ESci hasn’t fixed their stuff
@Divya Chayanam |
|
@Sayaka Ono | New product doesn’t persist when adding already completed pest control task | Repro steps
Expected The new product appears in the product field. Actual A placeholder is shown in the product field. Screenshots/videos
| Yes |
| Non-blocking
Please fix |
|
@Joyce Sato-Reinhold | All IP notifications from today (July 30th) lead to unknown record errors
FIXED AS OF JUL 31 | I think this is a one-off due to manual deletion from ESci database, but please re-check on the next few days prescriptions Repro steps
Actual Notifications link to non-existent IPs that no longer seem to exist:
| No |
|
|
|
@Denis Dovganyuk | Zero-value expense is displayed in green, same as revenue | Steps to Reproduce:
Expected Result:Expenses with a value of R$0.00 should be displayed in a neutral or expense-specific color (red but $0), not green, to avoid confusion with revenue. Actual Result:When a zero-value expense is created, it is displayed in green, the same color used for revenue, which may mislead users into thinking it's income. | Yes | Low | Non-blocking |
|
@Denis Dovganyuk | No results are displayed on the Finance Export document, once the user clears the previously applied filters during the Export process @Denis Dovganyuk could you put this ticket at the top of the priority bugs on the S118 doc | Environment : Both App And Beta
Steps to reproduce:
Actual Result: No transactions are shown on the export document
Expected Result: | Yes | High | Non-Blocking
|