Skip to content
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

[issue_tracker] Add Batch Mode #9339

Open
wants to merge 28 commits into
base: main
Choose a base branch
from
Open

Conversation

ay-bh
Copy link
Collaborator

@ay-bh ay-bh commented Sep 15, 2024

Brief summary of changes

  • Implement new "Debug View" "Batch Mode" in Issue Tracker module
  • Add button to access the new view
  • Develop tabbed interface for organizing issues by criteria
  • Create issue management interface within new view

The following features will be implemented in a future PR:

  • Implement modal for adding comments and managing assignees/watchers
  • Create new permission issue_tracker_debug_mode_edit

Testing instructions (if applicable)

  1. Navigate to the Issue Tracker module
  2. Verify the presence of the new "Switch to Debug View" button
  3. Access the new view and confirm the tabbed interface for different criteria
  4. Test editing of issues, including changing description, status, priority, and category
  5. Verify that changes made in the Debug View are reflected in the main Issue Tracker view

Link(s) to related issue(s)

Demo

Demo.mov

@christinerogers
Copy link
Contributor

christinerogers commented Sep 23, 2024

Great start Ayush! Could you please embed here (or else link) the video, or screenshots are fine.
My comments below are based off the video shared last week--

For the missing modal - could this be fixed before this work is presented to the larger team at the end of September, to avoid confusion and so Debug mode can be fully useful --:
What's missing is the ability to review past comments and add further comments -- Please see where this is visible in the sketches in #9268. This means the Edit Issue button should be called New Comment and it should trigger a modal per the bottom sketch provided.

The reason why --:
We don't really Edit the Issue Description because that would modify/overwrite the original report coming from the client-user research team. So instead the person debugging the issue must add new comments and also review prior comments -- we realize this was not detailed in the #9268 text though quite visible in the design sketch.

@racostas @regisoc let me know asap if this has already been discussed among you.

Thanks Ayush, it's looking solid otherwise.

@racostas
Copy link
Contributor

Hi @ay-bh, I reviewed the PR and is looking like a good start indeed.
Yes, the functionality @christinerogers is mentioning it's important, I'm thinking now if it can be somehow be part if this same "view" in place of a new one ( do you think @regisoc that having the latest comments in this same view) will be defeating the purpose of the new view (because will be making the windows too big) or in facts can help to take the decision faster (without going throw the modal windows).
image

@racostas
Copy link
Contributor

@SantiagoTG, your inputs here are also very welcome since you have been working a loot with issue tracker. If you have time to take a look to this proposal you opinion is very important. Thanks.

@regisoc
Copy link
Contributor

regisoc commented Sep 26, 2024

@racostas @ay-bh to keep you updated, we did not have time to test that together with @SantiagoTG.
The video was looking good. We will try to update you later today.

@regisoc
Copy link
Contributor

regisoc commented Oct 3, 2024

Hello @ay-bh great start indeed! Here are some comments from both me and @SantiagoTG.
There is a lot to say, but I tried to be exhaustive and integrated description/images/gif to be clear on the reasons behind each point, so don't be discouraged! I love the clean design, and those are more enhancements than problems.

I tried to group comments:

  1. global view:
    1. Number of card displayed: How many cards are displayed? Some projects have lots of issues (e.g. around 14k on HBCD right now). Even with a filter active, it might be a very long list. Paginating them could be a good idea.
    2. Card ordering: Not thought at first but would be good: have an ordering system, e.g. order ASC/DESC by last comment date. Can be done later.
  2. cards/individual issues: looks good! Good and simple design.
    1. issue (?) card date not updating: I tried to update a card but the last update date was not updated. Maybe a bug on my end. Other data were updated.

    2. Display last comments: Going back to what @christinerogers and @racostas mentioned: having a quick view on the last few comments is important. It can be up to 3 (maybe?) but would depend on the space required for it. We could split the card horizontally, with the left side = description and the right side = last 1-2-3 comments. I do not think we have a restriction on the maximum height a description can have but we do not want to have cards too big on a screen. So, it could be a fixed max height, if the text in height of the description is more than that, it should be managed as an overflow (collapsible text area).

    3. Clearer disabled elements: if the ticket/issue is disabled, do not show it as a clickable dropdown element. it should be an unambiguously non-modifiable static text. Moreover, for each element, there should be a clear text to say which field it is i.e. category, priority, status. We only have 3 right now, but this will be changed.
      clipboard_2024-10-03_16-25

    4. New comment modal: Still missing the comment modal attached to the card, but this still looks good start.

  3. filters: more things to say here. Globally still good, and we can enhance than side.
    1. filter checkboxes with lots of items: having an inline list of elements works when there are few, but not on some projects with dozens of them. It will not be ergonomic (e.g. see gif after). A collapsible with a max height, overflow, and listed elements could alleviate that (see issue).
      Recording 2024-10-03 at 15 51 12

    2. Issue redimensioning text area: description label goes wild.
      Recording 2024-10-03 at 14 04 47

    3. Active filters indication: because we can travel from one filter on one tab to another, we can lose the active list of filters. E.g. activating a filter in status tab, then going to another tab category. The first filter is still active but we are not able to see it.
      Recording 2024-10-03 at 13 55 56
      Two things here to help on that side:

      • active filter tracking: something like a number of active filters on each tab title will be a good first step. Something like a badge/pill maybe.
      • reset filter button: a quick way of resetting all filters to the default (no active filters).
    4. Site as a base filter/tab: sending issue to people in different site, we could automatically apply some filters based on people location. Site should be a new tab.

That was a lot more to write than expected, but I tried to describe each point.
This PR is good work, and I am eager to see the next steps!

@racostas
Copy link
Contributor

racostas commented Oct 3, 2024

Hi @regisoc, very good review in facts. I'm sure @ay-bh can address all of this points before the end of the coding period (end of October). Maybe he can present some of the advances he had been making in two weeks from now. (then do a second final presentation in November 5). I will keep you posted with more details after consulting it with him because he have other commitments in the school as well.
I'm very happy with this first review. What he (and @christinerogers and myself) wanted the most if to have a work that users find useful... and as you mention there are already some steps in this direction.

@driusan
Copy link
Collaborator

driusan commented Oct 4, 2024

Can we also make sure this has a more descriptive name than "Debug View"? I suggest something like "Batch Mode" since that seems to be what it's doing.

@regisoc
Copy link
Contributor

regisoc commented Oct 4, 2024

@driusan @ay-bh oh yes I forgot this one :) Good point, batch mode is a good one.
I did not have any good idea the moment I created this ticket.

@ay-bh
Copy link
Collaborator Author

ay-bh commented Oct 6, 2024

Thank you all for your detailed feedback and suggestions. I'll start working on implementing these improvements.

@ay-bh ay-bh changed the title [issue_tracker] Add Debug View [issue_tracker] Add Batch Mode Oct 6, 2024
@racostas racostas added the GSOC Google Summer of Code related label Oct 8, 2024
@racostas
Copy link
Contributor

racostas commented Oct 8, 2024

Hi @ay-bh, this two changes are looking good. Thanks for the update !
I will be continuously testing, feel free to push any change as soon as its ready since this PR can get big very fast and will be not to easy to test if we wait until all is addressed.

Great work !

@racostas racostas self-requested a review October 15, 2024 13:47
Copy link
Contributor

@racostas racostas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @ay-bh, very nice work !
I have been testing the new modifications and they look great.
I have a couple of comments nevertheless we can address:

  • I think pagination at the end of the cards will be very useful, right now we have it in the top, can we have it on both (top and bottom) ? This way the user don't have to go to the beginning of the page to go to the next pages or to change the quantity of cards it wants to consult if changes it mind when arriving at the end of the page

image

  • Also regarding pagination, by default we start at 20 in most of the LORIS modules, but since the design of this one is particular and the cards to take more screen area I think we can start in 10 as an option for the user. What do yo think ?

image

  • I like very much the way you had addressed how to show the comments inside the card ( very nice ). Do you think it will be possible to add a button, or link to show all the comments ? ( this will help the user to decide in long living issues without having to go to the standard view to see all of then)
    image

Again @ay-bh, very good progress !! Looking forward for the new features !!

@racostas racostas added the Needs Work PR awaiting additional changes by the author or contains issues that the author needs to fix label Oct 15, 2024
@christinerogers
Copy link
Contributor

Great progress @ay-bh - looking forward to seeing this presented.

Just to check the outstanding permission for issue_tracker_batch_mode_edit (see PR description at top) -- Is this still needed @regisoc @racostas ?
If so, @racostas should it go in this PR or could you help create a new followup issue?
Thanks

@regisoc
Copy link
Contributor

regisoc commented Oct 16, 2024

@ay-bh I will try to do another review before the end of the week.
@christinerogers good question. Maybe a bit of context: when I thought about it at first, I wanted to have a clear separation between people viewing/editing in "classical" mode (i.e. doing punctual and few assigned tasks), and those who can "batch" process a lot of issues (i.e. reviewing/solving issues, coordinating with people, closing issues). This is because HBCD has quite a number, and the main page takes some time to load i.e. ~10 seconds (can be longer when pressuring the server).
In my mind, "batch" mode is always for editing (and acting on several tickets), there is no big incentive in only viewing (searching information should be done in "classical" mode with numerous filters).
So to answer you, not sure if that is needed, but I am still in favour of having this separation for now.
Maybe you and @racostas have another view on that? I am not strongly attached to it anyway.

Copy link
Contributor

@regisoc regisoc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To add with @racostas previous review:

  • pagination change at the bottom.
  • pagination starts at 10 (yes!).
  • link to all comments. Could be nice, but I think this one is less a priority. All comments can be accessed by clicking the issue ID/title for the full issue view.

Points to be addressed (previous review):

  • issues pagination: looks ok, but do not have enough issues to test. Maybe easier to test with a pagination at 10 ;)
  • issues ordering. Not a priority.
  • bug: issue timestamp not updating: resolved.
  • display last comments: looks nice!
  • clearer disabled elements: if possible, change dropdown to a label when it is disabled + add the actual label (category,priority,status). i.e. seomthing like category: aaa.
  • new modal for comments: partially done. Still needs to modify assigned/watchers but it looks simple and great. Tested with 5 paragraphs of lorem ipsum and still looks nice!
  • filter block: more genral comment here. The actual design is better but we still cannot track how many filters are selected. I was more thinking about something like this where: we can direct access to all filter in one click, have a visual hint on which filters have selected criteria (badge/number), and collapse the full filter section to focus on issues.

Untitled Diagram drawio(1)

  • bug: issue with description text area: ok.
  • filter reset button.
  • Site filters.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
GSOC Google Summer of Code related Needs Work PR awaiting additional changes by the author or contains issues that the author needs to fix
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[issue tracker] Alternative view for issue hunting
5 participants