Jamie Tanna

@www.jvt.me.web.brid.gy

Listened to Breaking Change v55 - I'm a good guyjin by Justin Searls Post details > We cut our trip a day short, so I found myself with a totally free day with no plans. Naturally, I wasted it by recording a 3-hour podcast. Dang. I always enjoy…

Breaking Change v55 - I'm a good guyjin

We cut our trip a day short, so I found myself with a totally free day with no plans. Naturally, I wasted it by recording a 3-hour podcast. Dang. I always enjoy…

justin.searls.co

How to check which PRs were removed from the Merge Queue due to failed status checks, via the GraphQL API.

Finding which PRs have been taken out of the Merge Queue due to failed status checks

In the Renovate project, we use the Merge Queue to merge PRs. If a PR fails its status checks, it will be pulled out of the Merge Queue, and a maintainer will need to re-queue it, if it is a transient error. For those of you unaware, GitHub are having a pretty hard time recently with outages, which means that we're seeing an increase in the number of PRs being pulled out of the Merge Queue due to transient errors due to GitHub's instability (and in rare cases, due to flakiness in our test suite). For a number of these PRs, they're dependency updates that Renovate raises (:yo_dawg:) which means that a maintainer doesn't necessarily see they're unmerged. If we want to find out which PRs are approved, but not merged due to the merge queue un-queuing them, we can use the following GraphQL query: # via Claude Sonnet 5 $ gh api graphql -f query='query { search(query: "repo:renovatebot/renovate is:pr is:open review:approved", type: ISSUE, first: 50) { nodes { ... on PullRequest { number title reviewDecision timelineItems(itemTypes: [REMOVED_FROM_MERGE_QUEUE_EVENT], first: 5) { nodes { ... on RemovedFromMergeQueueEvent { createdAt reason } } } } } } }' { "data": { "search": { "nodes": [ { "number": 45225, "reviewDecision": "APPROVED", "timelineItems": { "nodes": [] }, "title": "chore(deps): update dependency @biomejs/biome to v2.5.7 (main)" }, { "number": 45223, "reviewDecision": "APPROVED", "timelineItems": { "nodes": [ { "createdAt": "2026-08-11T13:26:04Z", "reason": "failed_checks" } ] }, "title": "fix(deps): update ghcr.io/renovatebot/base-image docker tag to v13.84.2 (main)" }, { "number": 44971, "reviewDecision": "APPROVED", "timelineItems": { "nodes": [] }, "title": "fix(manager/mix): run mix commands from the lock file's directory" } ] } } } In this case, we can see that PR 45223 was taken off the Merge Queue and needs to be merged.

jvt.me

What happened in the week of 2026-08-03?

Week Notes 26#32

* Ditto to last week: still not finished my Canada blog post * Was a bit of a busier week with Anna in the office for a good chunk of the week * And a pretty intense week at work on top of that 😬 * Continuing to try and refine the plan Claude needs to implement for my Micropub rewrite * Had a nice weekend down in London for my mum's birthday * The a very bad drive down - took an extra ~90 minutes, including traffic as we were trying to get onto the M1 and by Hemel, with standstill traffic, and Waze thinking that the M1 wasn't closed, so after us starting on a detour, it took us through some awful country lanes to then get back onto the M1 * Nice to see my niblings D and D, and some of the cousins * Morph's enjoyed a bit of time with us to himself, while Cookie's at Anna's parents * Had a lovely time catching up with my parents 🥰 * Got my ticket and travel approved to Open Source Summit Europe - let me know if you're going! * Been trying to see how listening to music through my personal laptop - instead of turning on my desktop - which has worked quite well, and is better than my phone's speakers at least * Looking forward to GopherCon UK next week * My watch's screen has very much decided it's time to go, only attached now with ~10% of the glue that is meant to hold it, to the point I've not worn it today (so my steps for today may be incorrect) for fear of losing the screen completely. In a bit of a panic of not knowing if I'd be able to get a new one - given Google Store and John Lewis aren't stocking any models - before the new one is announced this week, but not available till October, I decided to slightly panic buy a Pixel Watch 4, which arrives tomorrow (via Google's Amazon store 🤷🏼) Played: * _Kingshot_ (as usual) * _Apex Legends_ * The new season sucks significantly, and everything seems so slow after the Cyberpunk event ended Reading: * _Leviathan Falls_ * _Inspired: How To Create Tech Products Customers Love_ Watched: * _Veep_ (Season 5) * _Veep_ (Season 6) * _Saturday Night Live_ * _The Expanse (Season 5)_

jvt.me

Do I know anyone who's going to Open Source Summit (Europe) in October and/or the OpenSSF Community Day? Looking forward to attending my first one!

#### **_Code. Community. Collaboration._** ## **7-9 October 2026** ### **Prague, Czechia** #### **#OSSummit** **register** **Sponsor** **VIEW THE SCHEDULE** Open Source Summit is the premier event for open source developers and contributors. It’s where maintainers, technologists, and community leaders come together to share knowledge, collaborate on solutions, and push open source projects forward. It’s the home for code, community, and the people driving the future of open source. ##### **Why Attend** * **Connect** with the people shaping open source * **Learn** from maintainers, developers and community leaders * **Discover** emerging technologies and practical solutions you can use right away * **Collaborate** on ideas and code that move projects forward * **Grow** your skills, your network, and your career 8 2 19 45 12 Weeks Days Hours Minutes Seconds #### **Open Source Summit Europe** **2026 Tracks:** * **Cloud & Orchestration** * **Digital Trust (LF Digital Trust)** * **Embedded Linux Conference** * **Linux** * **Open AI + Data** * **Open Source 101** * **OSS Enabling & Management** * **Packages, Images & Containers** * **PX4 Dev Summit** * **Safety-Critical Software** * **Zephyr Developer Summit** **View the Tracks** ### **Schedule at a Glance** **VIEW THE FULL SCHEDULE** **Monday, 5 October**| Co-Located Events ---|--- **Tuesday, 6 October**| Co-Located Events **Wednesday, 7 October**| Keynotes, Breakout Sessions, and Solutions Showcase **Thursday, 8 October**| Keynotes, Breakout Sessions, and Solutions Showcase **Friday, 9 October**| Keynotes, Breakout Sessions, and Solutions Showcase > “Open Source Summit is a fundamental gathering place for exchanging ideas across projects and meeting all of the people who make open source communities work.” ### **THE ONSITE EXPERIENCE** SHOW MORE ### **_Become a sponsor_** Partnering with Open Source Summit provides a unique opportunity to connect with a variety of open source communities under one roof! Don’t miss your chance to sponsor THE premier event for open source code and community contributors. **explore sponsorships** ### **2025 Session Recordings** **VIEW ENTIRE PLAYLIST**

events.linuxfoundation.org

What happened in the week of 2026-07-27?

Week Notes 26#31

* Ditto to last week: still not finished my Canada blog post * Work's been particular busy this week with various bits going on, and an accidental major release * And as it'd been a pretty intense week, Friday was a little bit more a "catch your breath" day where I worked on a couple of bits, got Claude Fable to investigate some things for me (and it got some pretty good investigations, similar to what I would have done!) * Had a nice massage on Friday, and a lil' mooch about town * * This week I've been thrown trying to understand what day it is - our usual Thursday night pizza night got moved to Wednesday, and then Anna went to see family on Thursday, which made me think it was Friday, and then over the weekend it felt like a very long weekend even though it wasn't 😅 * As Working Man's Kitchen was closed, we went to Bustlers which was nice and a different group of folks! * Had an awful night's sleep on Wednesday because Cookie wanted us to know every time this poor little cat kept trying to come into the garden to scavenge some rubbish that'd flown out of next door's bin * Made a start on prepping the fence to be painted, but it was a bit awkward trying to pressure wash it without splattering all the cars parked near us * Found some new Phaeleh songs which was nice * Wrote about some thoughts about how much AI can be used to reply to humans (in OSS) * Didn't get any chance to carry on with digging into my Micropub rewrite * Nice to have Chick 'n' Shakes again Played: * _Kingshot_ (as usual) * _Apex Legends_ Reading: * _Leviathan Falls_ Watched: * _Veep_ (Season 4) * _Veep_ (Season 5) * _Now You See Me_ (2013) * _Saturday Night Live_ * _The Expanse (Season 4)_ * _I Saw the TV Glow (2024)_ * _The Expanse (Season 5)_

jvt.me

Thinking about the onslaught of AI-generated contributions, and if there is space for maintainers to "fight fire with fire".

How much AI can a maintainer get away with using without losing their humanity?

I've been recently thinking about how Open Source maintenance seems to be becoming a little more a slog recently - largely with the increased amount of contributions possible with AI agents - and how it impacts being a maintainer. I'm very fortunate that my literal job is to be an Open Source project maintainer (among other things) and that it's a privilege not many others have. That being said, it still doesn't mean that undoes the amount of work that seems to be increasing every month. Mike McQuaid recently wrote an eloquent post about how Open Source needs to be fun, which naturally struck a chord - the work that we do needs to be sustainable and enjoyable. As someone who feels like they're consistently pushing the edges of burnout - possibly due to my ADHD - I've hit a bit of a wall several times, where the overwhelm of _so many things to do_ unfortunately leads to needing to (often silently) take a step back from the project for my own mental wellbeing. This is moreso true with oapi-codegen and how we're trying to make it more sustainable. `oapi-codegen` is a widely used project with a difficult API surface: give me your arbitrary OpenAPI specs, and we'll convert the complex or straightforward spec to a form of Go that is generally nice to use. Being guided by our users' usage can be difficult at time, as well as Go's not-that-great type system. More recently, we've been feeling this pain with Renovate, and a significant uptick in contributions and feature requests that aren't really scaling with the team size we have, largely due to the usage of contributions with help from AI agents. (But at the same time, it's pretty great that we _are_ seeing an increase in adoption and engagement, and the patterns in our codebase work quite well for AI agents to help with contributions!) This has been something on my mind for a bit - as the project lead, I'm looking at what we can do to make things more sustainable for us as a project, while also taking into account valuable contributions from the community. This post doesn't come with an answer - it's more of a way for me to think through my feelings, and a call to action from other maintainers to hear how they're doing, and whether they're having to rely on AI to be able to deal with the increase in AI contributions, or if they have any other practices at their disposal. ## Why am I feeling the pressure? This isn't really an answer that should surprise anyone familiar with running an Open Source project - especially in the last few years. But to make it clear, it's because there's a significant increase in contributions to the project, be they bug reports, feature requests, Pull Requests to review, and (potential) security vulnerabilities. When I joined the Renovate project as the project lead in September, we had roughly 100 open Pull Requests, and I'd been trying to keep that number below 100 as long as I could. As of today, we have ~340, which has been a fairly consistent number over the last few months, increasing at a rate consistent with cutting off the head of a hydra. (Some folks may notice that as of writing, I have 72 of those open PRs - a number of these are drafts as I need to finish tweaks on them, and I'm aware that adds a good chunk to the overall number of PRs we have) As previously mentioned, the core maintainer team is only 3 people. Although we have some collaborators like Rahul and Sergei who do great work, the final decisions on functionality and reviews are the three of us maintainers - which is a tiny team considering that _zero_ of the three of us are working 100% full-time on the project, and we're so widely used as a project. To put this increase in contributions into perspective, let's look at some stats over the last few years. I set Claude Opus 4.8 to take data from my "maintainer dashboard" - which also includes information from Pull Requests - in a way to get some understanding of whether our feelings matched the facts. This data has all been analysed between January-July across 2024, 2025, and 2026. At a high level, we see: Something I also wanted to investigate is how GitHub Discussions interactions have changed, given it is our key interface with users. Although we're generally seeing increased adoption of Renovate, it _appears like_ more folks are using AI to answer the sorts of questions they'd come to our Discussion forums. This is good and bad - it's good that AI models are able to provide the support users need, but reduced interactions with the project means that we have less information about common issues, to improve documentation or smooth out rough edges. We can also see that although 2024 and 2025 were fairly consistent in their incoming PR contributions, 2026 has had ~60% more contributions during the same period: Looking at the data, we can also see more of a breakdown of how often we see one-off contributors vs people who stay more engaged with the project: Finally, we can also see that contributions to the project now are more generally larger - we see that our PRs are also growing in size: All of these show that there's an increased demand for maintainer work to review these PRs - we're doing what we can to add linters and documentation to reduce how many rounds of reviews or common issues need fixing, but there's still a lot of valuable work that reviews need to apply to the changes. ## Keeping my humanity With the increase in contribution, and the lack of cloning technology, this means that the maintainer team is remaining at 3 for the time being. Which begs the question - how do we keep our work sustainable? Do we need to lean on AI tooling to be able to keep up with it all? I'd say that I - most of the time - pride myself on my communication skills and empathy for my users. If I'm starting to outsource all that to our AI overlords, what's the point of a human being part of the conversation? I've interacted with some projects that do appear as maintainers completely using an AI agent to reply to your issue/PR comments and it feels impersonal and a little disappointing. I absolutely get why they are doing that, but it still doesn't feel great. If I don't enjoy being on the receiving end of AI-generated messages, why would I do that to my users? Even if I tried to coax the agent into a more natural speaking style for me, that still isn't my words and thoughts - and I'm generally of the opinion of "if you couldn't be arsed to write that, why should I read it?" My co-maintainer Marcin recently has done _so much great work_ on `oapi-codegen` to get us into a better place, and has managed to clear a huge amount of the overwhelming backlog. That was only possible because of his leaning on Anthropic's Claude, and I'm really glad he was able to do so - but at the same time, that also led to some surprising scenarios for some of our users who felt it was "a bot" doing the work. Although I aim to attribute my usage of AI in my codec changes and interactions on PRs/Issues/etc, I'm still not sure that someone knowing it's via AI would make it any better - I don't really feel better knowing an AI agent is replying to me instead of a person. However, if it reads like a user is replying to me with an AI agent, is it worth me spending my time to reply to them, or should I also have an agent replying to them? Given we only have so many keystrokes left, I'm thinking about how I want to try and optimise my time, while also not losing an aspect I appreciate about myself - my human empathy for my users, and theirs with mine. Sometimes as humans we get frustrated, or reply in the few minutes before bed, and that's important too, instead of sanitising it through an AI model. ## Please respond! And most importantly, to Open Source maintainers everywhere, please let me know what you're thinking about this all and how you're handling it. Are you a maintainer who's using AI to help maintain your project and/or your mental health? What's working for you? What don't you recommend? Are there tools like automated code review tools or tools for handling "here's how you may be able to solve your issue" tools you're finding useful? How much are you using in terms of authoring/actually responding to users vs using your own words? If folks are using AI to interact (including in terms of their replies to you), are you leaning on using AI to reply to them? I.e. "fight AI with AI"?

jvt.me