<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: jonchurch_</title><link>https://news.ycombinator.com/user?id=jonchurch_</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 13 Jun 2026 14:44:22 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=jonchurch_" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by jonchurch_ in "The unreasonable effectiveness of simple HTML (2021)"]]></title><description><![CDATA[
<p>(2021)</p>
]]></description><pubDate>Thu, 11 Jun 2026 22:48:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=48497456</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48497456</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48497456</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Staged Publishing for NPM Packages"]]></title><description><![CDATA[
<p>I am so incredibly stoked to see this! It is the piece which can FINALLY make it so Trusted Publishing can be safely used.<p>This releases a lot of pressure on maintainers, who until now needed to be experts in securing CI infrastructure in order to reduce the risks inherent in TP being a step backwards compared to local publishing with a second factor.<p>Will it be perfect? No, Im inclined to think nothing is perfectly secure. But I believe this will go a long way towards improving our ecosystem’s posture against at least the attack vectors we are seeing today.</p>
]]></description><pubDate>Wed, 20 May 2026 23:17:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=48215671</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48215671</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48215671</guid></item><item><title><![CDATA[Staged Publishing for NPM Packages]]></title><description><![CDATA[
<p>Article URL: <a href="https://docs.npmjs.com/staged-publishing/">https://docs.npmjs.com/staged-publishing/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=48215575">https://news.ycombinator.com/item?id=48215575</a></p>
<p>Points: 4</p>
<p># Comments: 1</p>
]]></description><pubDate>Wed, 20 May 2026 23:08:14 +0000</pubDate><link>https://docs.npmjs.com/staged-publishing/</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48215575</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48215575</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Postmortem: TanStack NPM supply-chain compromise"]]></title><description><![CDATA[
<p>The compromised action here was using pnpm.<p>They poisoned the github action cache, which was caching the pnpm store. The chain required pull_request_target on the job to check bundle size, which had cache access and poisoned the main repo’s cache<p>The malicious package that was publisjed will compromise local machines its installed in via the prepare script, though.</p>
]]></description><pubDate>Tue, 12 May 2026 01:00:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=48102883</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48102883</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48102883</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Postmortem: TanStack NPM supply-chain compromise"]]></title><description><![CDATA[
<p>Not to beat the dead horse, but ths floored me when I realized it so I keep trying to shout it at the top of my lungs.<p>There is no gate you can put on a Trusted Publisher setup in github which requires 2fa to remove. Full stop. 2fa on github gates some actions, but with a token with the right scope you can just disable the gating of workflow-runs-on-approve, branch protection, anything besides I think repo deletion and renaming.<p>And in my experience most maintainers will have repo admin perms by nature of the maintainer team being small and high trust. Your point is well taken, however, that said stolen token does need to have high enough privileges. But if you are the lead maintainer of your project, your gh token just comes with admin on your repo scope.</p>
]]></description><pubDate>Tue, 12 May 2026 00:36:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=48102687</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48102687</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48102687</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Postmortem: TanStack NPM supply-chain compromise"]]></title><description><![CDATA[
<p>I agree with you that TP is an improvement over long lived npm tokens in CI.<p>However, the threat Im most afraid of still does involve dev environment compromise. Because if your repo admin gets their token stolen from their gh cli, they can trivially undo via API (without a 2fa gate!) any github level gate you have put in place to make TP safe. I want so badly to be wrong about that, we have been evaluating TP in my projects and I want to use it. But without a second factor to promote a release, at the end of the day if you have TP configured and your repo admin gets pwned, you cannot stop a TP release unless you race their publish and disable TP at npm.<p>TP is amazing at removing long lived npm tokens from CI, but the class of compromise that historically has plagued the ecosystem does not at all depend on the token being long lived, it depends on an attacker getting a token which doesnt require 2fa.<p>I am begging for someone to prove me wrong about this, not to be a shit, but because I really want to find a secure way to use TP in lodash, express, body-parser, cors, etc</p>
]]></description><pubDate>Tue, 12 May 2026 00:02:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=48102416</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48102416</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48102416</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Postmortem: TanStack NPM supply-chain compromise"]]></title><description><![CDATA[
<p>I tested approving a deployment via API last week w/ my gh cli token (well, had claude do it while I watched). Again, I really want to be wrong about this, but my testing showed that it is indeed trivial to use the default token from my gh cli to approve via API. (repo admin scope, which I have bc I am admin on said repo)<p>Nothing in this link [1] proves what I said, but it is the test repo I was just conducting this on, and it was an approval gated GHA job that I had claude approve using my GH cli token<p>I also had claude use the same token to first reconfigure the enviornment to enable self-approves (I had configured it off manually before testing). It also put it back to self approve disabled when it was done hehe<p>[1] <a href="https://github.com/jonchurch/deploy-env-test/actions/runs/25524161667/job/74915599195" rel="nofollow">https://github.com/jonchurch/deploy-env-test/actions/runs/25...</a></p>
]]></description><pubDate>Mon, 11 May 2026 22:24:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48101513</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48101513</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48101513</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Postmortem: TanStack NPM supply-chain compromise"]]></title><description><![CDATA[
<p>I have not read that blog post. But unfortunately (and I'd love to be wrong!) it doesn't matter for if a repo admin's token gets exfiled, because if you put your gates within Github, an admin repo token is sufficient to defang all of them from the API without 2fa challenge.<p>That is why I want 2fa before publish at the registry, because with my gh cli token as a repo admin, an attacker can disable all the Github branch protection, rewrite my workflows, disable the required reviewers on environments (which is one method people use for 2fa for releases, have workflows run in a GH environment whcih requires approval and prevents self review), enable self review, etc etc.<p>Its what I call a "fox in the hen house" problem, where you have your security gates within the same trust model as you expect to get stolen (in this case, having repo admin token exfiled from my local machine)</p>
]]></description><pubDate>Mon, 11 May 2026 22:15:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=48101401</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48101401</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48101401</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Postmortem: TanStack npm supply-chain compromise"]]></title><description><![CDATA[
<p>its so wild to have seen this advice reverse course over the past year.<p>it used to be that projects that pinned deps were called out as being less secure due to not being able to receive updates without a publish.<p>different times, different threat model I suppose</p>
]]></description><pubDate>Mon, 11 May 2026 22:10:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=48101347</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48101347</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48101347</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Postmortem: TanStack NPM supply-chain compromise"]]></title><description><![CDATA[
<p>It is unfortunate, but this is evidence (IMO) that Trusted Publishing is still ~~not secure~~ not enough by itself to securely publish from CI, as an attacker inside your CI pipeline or with stolen repo admin creds can easily publish. This isnt new information, TP is not meant to guarantee against this, but migrating to TP away from local publish w/ 2fa introduces this class of attack via compomise of CI. (edit: changed "still not secure" to "still not enough by itself" bc that is the point I want to make)<p>Going to Trusted Publishing / pipeline publishing removes the second factor that typically gates npm publish when working locally.<p>The story here, while it is evolving, seems to be that the attacker compromised the CI/CD pipeline, and because there is no second factor on the npm publish, they were able to steal the OIDC token and complete a publish.<p>Interesting, but unrelated I suppose, is that the publish job failed. So the payload that was in the malicious commit must have had a script that was able to publish itself w/ the OIDC token from the workflow.<p>What I want is CI publishing to still have a second factor outside of Github, while still relying on the long lived token-less Trusted Publisher model. AKA, what I want is staged publishing, so someone must go and use 2fa to promote an artifact to published on the npm side.<p>Otherwise, if a publish can happen only within the Github trust model, anyone who pwns either a repo admin token or gets malicious code into your pipeline can trivially complete a publish. With a true second factor outside the Github context, they can still do a lot of damage to your repo or plant malicious code, but at least they would not be able to publish without getting your second factor for the registry.</p>
]]></description><pubDate>Mon, 11 May 2026 22:06:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=48101308</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=48101308</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48101308</guid></item><item><title><![CDATA[New comment by jonchurch_ in "The Claude Delusion: Richard Dawkins believes his AI chatbot is conscious"]]></title><description><![CDATA[
<p>> So when Becker asked ChatGPT (at the time of writing his book, it has been updated since)</p>
]]></description><pubDate>Sun, 03 May 2026 00:49:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=47992116</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47992116</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47992116</guid></item><item><title><![CDATA[New comment by jonchurch_ in "A GitHub Issue Title Compromised 4k Developer Machines"]]></title><description><![CDATA[
<p>Instead HN has human moderators, who often make changes in response to these kinds of things being pointed out. Which is quite a luxury these days!</p>
]]></description><pubDate>Thu, 05 Mar 2026 18:10:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47265075</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47265075</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47265075</guid></item><item><title><![CDATA[New comment by jonchurch_ in "A GitHub Issue Title Compromised 4k Developer Machines"]]></title><description><![CDATA[
<p>Thats what the second chance pool is for<p>The guidelines talk about primary sources and story about a story submisisons <a href="https://news.ycombinator.com/newsguidelines.html">https://news.ycombinator.com/newsguidelines.html</a><p>Creating a new URL with effectively the same info but further removed from the primary source is not good HN etiquette.<p>Plus this is just content marketing for the ai security startup who posted it. Theyve added nothing, but get a link to their product on the front page ¯\_(ツ)_/¯</p>
]]></description><pubDate>Thu, 05 Mar 2026 18:01:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=47264969</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47264969</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47264969</guid></item><item><title><![CDATA[New comment by jonchurch_ in "A GitHub Issue Title Compromised 4k Developer Machines"]]></title><description><![CDATA[
<p>This article only rehashes primary sources that have already been submitted to HN (including the original researcher’s). The story itself is almost a month old now, and this article reveals nothing new.<p>The researcher who first reported the vuln has their writeup at 
<a href="https://adnanthekhan.com/posts/clinejection/" rel="nofollow">https://adnanthekhan.com/posts/clinejection/</a><p>Previous HN discussions of the orginal source:
<a href="https://news.ycombinator.com/item?id=47064933">https://news.ycombinator.com/item?id=47064933</a><p><a href="https://news.ycombinator.com/item?id=47072982">https://news.ycombinator.com/item?id=47072982</a></p>
]]></description><pubDate>Thu, 05 Mar 2026 17:49:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47264821</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47264821</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47264821</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Get free Claude max 20x for open-source maintainers"]]></title><description><![CDATA[
<p>Hey, thank you kind strangers who sent me some money. I appreciate it! <3</p>
]]></description><pubDate>Sun, 01 Mar 2026 00:10:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47202048</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47202048</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47202048</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Get free Claude max 20x for open-source maintainers"]]></title><description><![CDATA[
<p>> How many total developers does that cover? 100?<p>I love these questions bc they both can be answered with some slight heuristics, and they are quite surprising!<p>As of January 2026, there were > 13k npm packages w/ more than 1 Million monthly downloads [1]<p>Answering "how many total developers does that cover" is a lot harder (more expensive, rather, as I am not going to pay for the query on Google BigQuery to answer it, not after I spent $3k by accident last time doing similar exploration in the past)<p>I wont try to make a SWAG about how many devs have write access across those repos, but in the npm ecosystem alone I'm comfortable saying it is an order of magnitude more than 100.<p>[1] - <a href="https://gist.github.com/jonchurch/1dd845f4d26823fce5590af1aa66d207" rel="nofollow">https://gist.github.com/jonchurch/1dd845f4d26823fce5590af1aa...</a></p>
]]></description><pubDate>Sat, 28 Feb 2026 00:21:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=47188127</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47188127</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47188127</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Get free Claude max 20x for open-source maintainers"]]></title><description><![CDATA[
<p>ETH address 0x60F9CC1b97C78D8E8337Ef991a34bd8D9e600420 ¯\_(ツ)_/¯</p>
]]></description><pubDate>Fri, 27 Feb 2026 23:40:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47187625</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47187625</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47187625</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Get free Claude max 20x for open-source maintainers"]]></title><description><![CDATA[
<p>I currently pay them $200/month out of my own pocket for this already, so for me it is not a free trial but subsizing my usage.<p>Agreed that $200 USD would be preferable (credits dont pay rent). My comment is directed at the strong words others have left about this being in bad faith on the whole. Even if it is, then their bad faith efforts are better than most.<p>Opinions here will vary, I wanted to share mine <3</p>
]]></description><pubDate>Fri, 27 Feb 2026 23:39:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47187620</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47187620</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47187620</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Get free Claude max 20x for open-source maintainers"]]></title><description><![CDATA[
<p>I dont want to misrepresent, I am not the original author of any of these projects. I am not JDD of lodash (who is still involved and part of the TC) nor TJ Holowaychuk of express.<p>I dont know what the future will look like, but IMO open source is the intersection of code and community (aka the squishy bits) and for that reason I dont think AI will make it obselete, not now nor in the future.</p>
]]></description><pubDate>Fri, 27 Feb 2026 21:07:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47185623</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47185623</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47185623</guid></item><item><title><![CDATA[New comment by jonchurch_ in "Get free Claude max 20x for open-source maintainers"]]></title><description><![CDATA[
<p>Folks saying this offer is in bad faith or not generous enough dont seem to understand how low the bar is here for rewarding maintainers.<p>I maintain Express.js and Lodash, as well as a number of express direct deps (as a TC member of both Express and Lodash).<p>OSS has been my fulltime focus for over a year (aka Im unemployed). In 2025 I made $10 from open source, in the form of an amazon gift card for fixing a bug in another random open source project (I think they have VC money).<p>Call it skill issue on my part, sure valid. But having a form that says “give us your email and handle, we can easily verify your contributions, and in exchange you get $200/month of value and we ask nothing of you” is the most generous gift Ive seen.<p>Is it enough to fix the well known power dynamics of OSS? Of course not. Is it cheap PR for Anthropic? Yes, as is every other corporate OSS fund initiative. Im not going to give them a standing ovation and a key to the city bc they cleared the extremely low bar.<p>My point is that, regardless of motives, from this maintainer’s perspective this is a kind offer which is respectful of me and my time. If you fall into the camp that training on OSS is stealing, I can see why youd think that this is a slap in the face. I personally do not see it that way, as my work is a conduit for me to serve millions Ill never meet, and what they do with my labor is not a personal concern. I do what I do because the process itself has value to me.</p>
]]></description><pubDate>Fri, 27 Feb 2026 20:27:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=47185117</link><dc:creator>jonchurch_</dc:creator><comments>https://news.ycombinator.com/item?id=47185117</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47185117</guid></item></channel></rss>