I propose to create additional labels in the triaging process for pmaports.
While we have labels for the devices, the release, the soc and the issue-status, looking at many issues I noticed, it might be also good to have a possibility to classify by sub-system.
This could be:
audio
camera
network-lan (for eth & wlan)
mobile-data
bluetooth
display
storage
filesystems (incl. zram)
init
bootloader
3d-accel
Above list is just an example, but I think having another level of classification would help grouping issues.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Child items ...
Show closed items
Linked items 0
Link issues together to show that they're related.
Learn more.
I think we have a lot of labels with questionable degrees of usefulness as well. "status::duplicate", ironically, duplicates a built-in GitLab feature. "type::fix" and "type::feature" are seldom useful in pmaports, at least, as merge requests often can bring in both features and fixes, and in those cases it's not clear which one should choose. Additionally, when do you want to sort MRs after whether they introduce features or fix bugs anyway? The whole "category"-class of labels I'm not sure how useful they ever are either.
I'd be fine with adding more labels, and adding ones for the subsystems seems useful at first glance - it would be rather intuitive to add them, and people could subscribe to individual subsystems (I'm not sure if anybody is doing that though).
Maybe that is something we should figure out first: would people actually subscribe to subsystem labels? or what would the purpose be? Depending on that, we can figure out if it is worth adding more labels or not.
Agreed with Newbyte, some of the labels we have right now need to be reworked (and maybe the whole triaging workflow?) - unfortunately it seems a bit like we have a lot of labels, but it is not intuitive when they should be applied and so it is done inconsistently.
"status::duplicate", ironically, duplicates a built-in GitLab feature. "type::fix" and "type::feature" are seldom useful in pmaports, at least, as merge requests often can bring in both features and fixes, and in those cases it's not clear which one should choose. Additionally, when do you want to sort MRs after whether they introduce features or fix bugs anyway?
agreed, I'd be fine with removing status::duplicate, type::fix and type::feature
The whole "category"-class of labels I'm not sure how useful they ever are either.
In theory it should help with immediately seeing how much an issue impacts users, i.e. issues affecting main and community devices are more important than devices that "only" affect devices in the testing category. But then again, it is extra effort to apply these labels and FWIW personally I don't think I found myself paying that much attention to the device category labels. Also if a device gets moved in categories, we would need to adjust the labels as well if we did it properly... Maybe we should remove them as well?
I wouldn't mind if we ended up only having very few labels, which are used consistently throughout the bug tracker and where it would be very clear on how to use them.
I guess ideally somebody could go through each label, existing or newly proposed, and write down:
what the purpose of the label is
if it really fulfills the purpose
if the name of the label is intuitive or not
make a recommendation (keep/remove/discuss further)
Thanks a lot for opening this issue, but seems like you opened a bit can of worms
I think the labels you propose could be useful. But I think the biggest problem I have with the issue tracker is how hard it is to find things that I actually care about (partially my fault, I just subscribed to the ui labels...). I have the feeling that most issues are actually random device issues and support problems, that few people care about. And I really don't know how to do it to improve this process, it just takes sooo long to ask people for reproducers, etc.
Spent some time these last couple of days digging around in issue (and making a little noise as I got confused what project issues are in, like the webflash one, so sorry about that!). This started from discussions Caleb, Clayton, and I had these last weeks about how to triage issues for the systemd work. I wanted to get the ball rolling there, so I updated the triaging page with a few additional categories. I also updated all the ui and device labels in pmaports to be scoped properly, but didn't go beyond that even though there are others (backport, release, etc.) that look like they could use it.
Reading through this issue, labels are really about coordination, as in a process. Making sure the right people see the right issues and that everyone also knows their status. I think there's a ton of dimensionality as we can see. But I'm wondering what we actually do with this information?
I think there are 3 dimensions: user impact, who cares to fix it, and what's the status:
user impact: device, soc, ui, release labels seem relevant here.
who cares to fix it: basically follows from the above. But should people be pulled in (I think this is common with device-specific issues). What about the others? Are maintainers listed for everything? Kind of brings up the concept of subteams. a11y has had folks specifically interested in it.
status: these seem well defined (well, tracking if it's an upstream issue seems a bit more nebulous)
BTW is https://wiki.postmarketos.org/wiki/Triaging supposed to be unlocked? Saw it's in the Admin section of the wiki, where most pages are locked (though Creating a release branch, and creating a service pack aren't either). Happy to open a new wiki issue to track this if it should be looked at.
How does this work with the larger community? help wanted/request-for-test + difficulty tags seem useful for that. Could also promote them more widely (TWiR highlights some from various crates in their weekly blogpost that I think is really cool).
How do we link this all together so people can figure it out? I just scoped all the ui labels and found that some are missing wiki pages (GNOME mobile, console, fbkeyboard, framebufferphone, kodi). Having a wiki page for things I'd think is high value to get this useful to the wider community as well.
How does this work with the larger community? help wanted/request-for-test + difficulty tags seem useful for that. Could also promote them more widely (TWiR highlights some from various crates in their weekly blogpost that I think is really cool).
We could have such topics also mentioned at the end of blog-posts or in the podcast.
I think that's a pretty interesting idea and one that will likely dictate much of the process. I was looking through the oldest issues and there are 5yo issues. Not certain if having those around is useful.
I think having timelines for issues and MRs to stay open in different contexts could make a lot of sense.
While I don't necessarily think we need to go that far, I think we at least should disallow creating issues about ideas you have no plans to implement. I've been guilty of this myself in the past, but it's something I think clogs the issue tracker with things that just aren't useful.
The reason I'm not sure about whether to go that far is because searching the issue tracker for issues about a particular device can be useful for gauging whether this device has any particular things that would prevent it from being useful for your needs before buying it. This is unlike GNOME where you just can install a program and try it out and uninstall it if you don't like it. I don't think tracking issues on the wiki is a better paradigm.