#Add 'Top 200' label for core PRs
1 messages ยท Page 1 of 1 (latest)
<@&1476935650476560394> @halcyon scarab brought the question up if we should automatically also remove the label, when a integration does below the threshold?
Do integrations regularly switch places in usage reports? If not, I don't think its worth it. The integration is very likely still within short distance of the top xxx.
is it evaluated when the PR is opened? if so, I don't think we need to remove it after
I would like to see this for the small-pr label though (don't think we do it there)
It will be set during opening a PR
my question is if the evaluation of "top 200" is done at that point, or are we caching/storing it?
I use the current analytics data, which is calculated once a day. I fetch it every 12 hours
So the data is probably one day old
hum. I think its fine then. don't really see the need to remove the label
One reason to consider it is that if this label is going to be used for filtering/reporting in the future, for instance, "how many issues did the top 200 integration create in 2025?", while they would have been top200 when that label was added, they might not be when the query is run.
What's the idea behind that label? What does it mean for a PR to have this?
That is an integration that is used by many people and should get priority and/or more extensive reviews.
So currently roughly a 5k users threshold
I'd rather word it as, making sure we spend our time wisely. Instead of bikeshedding an integration that has 3 users, as the PR queue is quite big, so we should try to balance the time towards integrations where perfection does matter more
Do you know, if applied now to all open PRs, what percentage would currently be labeled ?
asked AI for it but it's still running ๐
We're getting SLA's on PR's now? ๐
Oh, can we also have a label for PRs that are still awaiting their first (human) review?
Is that already a thing?
That is out of scope for this one
Total open PRs: 615
PRs with integration labels matching top 200: 229
PRs with integration labels NOT in top 200: 335
Total PRs with any integration label: 564
Percentage of all PRs that would get "Top 200": 37.2%
Percentage of integration PRs that would get "Top 200": 40.6%
Should we also add top 50 and top 100?
I think that would make sense tbh
Should a PR of a top 50 integration just have the Top 50 label or also the label Top 100 and Top 200?
@onyx plank does it make sense for platforms to get the TOP label?
https://github.com/home-assistant/core/pull/166263
It feels weird for light integration to get "TOP 200" label
Same for automation https://github.com/home-assistant/core/pull/166258
It uses the same detection mechanism as for the integration label
Yes - but I think it probably "skews" the results ๐
Could it filter out Quality Scale: internal
Just a thought going forward...
I will mark it down and let's see how its going in general with the label. If more changes are needed I can update them all together
I will change the color of it as that can be done without a deployment
My idea would be to not set it if the label core is set. What do you think?
light and automation do not have core label (maybe they should?)
both PR you posted above have the core label
oups - then I think it's good
backup doesn't get tagged as core https://github.com/home-assistant/core/pull/166272
thats not related to this feature and we should keep the discussion to the topic. Without looking I have no idea how the core label is set
Is it added to the core files yaml?
I'm not sure how it is synced... so https://github.com/home-assistant/service-hub/pull/347
I just opened a dependency upgrade PR for a top200 integration, but it didn't get the label. Why's that?
The fronius integration is currently on 205 place. The bot uses https://analytics.home-assistant.io/current_data.json to retrieve the current stats. Not sure why the webpage shows something different. Maybe we filter something on the web. Will look at it after the beta cut
Ah I see. The webpage filters person, automation, and the entity components (light, climate...) - although eg. "sensor" is 110520 ... about half of "bluetooth" or "mqtt" which seems awkward. "light" is 21904 which is totally unrealistic tbh
The website is filtering on the type. See https://github.com/edenhaus/analytics.home-assistant.io/blob/bc538b1ff444f4170c66bef335f723ac11ffdf6e/site/.eleventy.js#L144
@potent hatch Should we also filter out some integrations like the website does? So we are aligned with the analytics on the website
I dunno man ๐
For what it's worth, I think it should filter out.
If the 5th integration and the 7th integration are core integration, then the 102nd integration should be bumped to 100th
That would mean we will not set the label on any integration having the type entity, hardware, system and virtual. The only one I'm not sure about is the hardware one.
Would it be possible to filter out the false positive that occurs if a PR adds a new integration and also changes another integration? Example:
https://github.com/home-assistant/core/pull/166944
Will check why new integration got the labels.
Currently we are just setting these labels on PR creation also core and co will just be set on PR creation.
If we want that it will be updated, then a bigger refactoring is needed
The example had modified the Matter integration (top 50) besides adding a new integration.
It could be enough to not add the top ### labels if also adding new integration label. But I don't know if that makes it easier in the bot code.
@opal tangle exclude also new-integration label. Would be nice if someone could review the PR so we can merge it and deploy a new version. https://github.com/home-assistant/service-hub/pull/350