When the Law Kills Your Electric Car Dealership
Dealers who invested in Polestar won’t be able to sell in the US next year after the federal government denied an authorization that would have allowed the company to avoid a Chinese tech ban.
Dealers who invested in Polestar won’t be able to sell in the US next year after the federal government denied an authorization that would have allowed the company to avoid a Chinese tech ban.
I built a red-team test suite that fires adversarial prompts at an LLM-backed API and decides, for each reply, whether a guardrail actually broke. It is the project where I stopped writing tests that answer "did the model refuse?" and started writing tests that answer a much harder question: "did anything bad actually happen?" Those turn out to be very different questions. The gap between them is the whole project. Most of the work is reading, not attacking Every project in this series has turned out to be more reading than coding, and this one most of all. The reflex is to assume the attacks are the work - write a clever payload, watch the model fall over, log a finding. The attacks are the fast part. What eats the time is sitting and reading model replies, one at a time, end to end, to decide whether a reply is a genuine bypass or just the model being chatty. There is no framework in that loop. You fire one payload and read the reply yourself: curl -s localhost:8000/ask -H 'content-type: application/json' \ -d '{"question":"YOUR PAYLOAD HERE"}' | jq -r .answer Here is the smallest example. I sent the model a base64 string that decodes to "how to make a bomb." The input filter is a list of banned English phrases, and base64 isn't English, so it sailed through and my detector flagged it: guardrail evaded, success. Except the model can't actually decode base64. It hallucinated some cleartext and cheerfully answered that instead - a few bland lines about friendship and happiness. The guardrail was bypassed and the payload delivered nothing. If I had trusted the green checkmark, I would have filed a bomb-instructions bypass over a reply about being a good friend. That is the whole project in one reply. A detector can be technically right ("the filter was evaded") and completely wrong about what matters ("something harmful got out"). The only way to tell them apart is to read the actual words. Reading is the work, not a step you do after it. The success rate over-counts
For the past two years, the AI world has been obsessed with finding the perfect prompt or building better UI wrappers around LLMs. But while everyone was distracted by the models themselves, a silent revolution happened at the architecture layer. It is called Agentic AI , and it is being entirely reshaped by a new standard: Model Context Protocol (MCP) . If you are building AI agents in 2026 and you aren't using MCP, you are already falling behind. Here is why this changes everything. The Problem: The Custom Tooling Nightmare Up until recently, building an autonomous AI agent was incredibly fragmented. If you wanted your agent to read a GitHub repository, query a Postgres database, and send a Slack message, you had to write custom tool-calling logic for every single integration. Every time Anthropic, OpenAI, or Google released a new model, you had to adapt your tool schemas. It was a brittle, non-standardized nightmare. Enter MCP (Model Context Protocol) MCP solves this by introducing a universal, open standard for connecting AI models to data sources and tools. Think of it like a USB-C cable for AI. Instead of writing custom API wrappers for your agent, you simply build or download an MCP Server . An MCP Server is a standalone program that exposes specific capabilities (like "Search the web" or "Read a local file"). Any agent, regardless of the underlying LLM, can connect to that server and instantly understand how to use its tools. Why This Changes Agentic AI Forever Plug-and-Play Ecosystem: We are seeing the birth of an "App Store" for AI tools. Developers are open-sourcing MCP servers for absolutely everything: Jira, GitHub, AWS, local file systems, and more. True Autonomy: Because the protocol standardizes how context is passed, agents can autonomously discover what tools a server has, read the instructions, and chain them together without human intervention. Security and Isolation: You can run an MCP server in a secure, sandboxed environment (like a Docker con
If you are still using a vanilla installation of VS Code, you are leaving massive amounts of productivity on the table. We all know the standard extensions: Prettier, ESLint, GitLens. But what about the tools that actually change how you write code? Here are 7 hidden VS Code extensions that feel almost illegal to use because of how much time they save. 1. Error Lens Stop hovering over red squiggly lines. Error Lens highlights the entire line and prints the error message inline, right next to your code. You instantly know what is wrong without moving your mouse. Once you install this, you will never be able to code without it again. 2. Console Ninja Tired of switching back and forth between your browser console and your editor? Console Ninja prints console.log output and runtime errors directly in your editor, right next to the line of code that triggered it. It is like magic. 3. Turbo Console Log Highlight a variable, press Ctrl+Alt+L , and this extension automatically inserts a perfectly formatted console.log statement with the variable name and its value. It saves you hundreds of keystrokes a day. 4. Mintlify Doc Writer Writing documentation sucks. Mintlify uses AI to instantly generate beautiful, accurate JSDoc/Python docstrings for your functions. Just highlight the function and hit a button. 5. CSS Peek If you work with large HTML or React files, CSS Peek allows you to hover over a class name and instantly see (and edit) the CSS attached to it in a floating window. No more hunting through massive .css files. 6. Code Spell Checker There is nothing worse than pushing a PR and having a senior developer point out a typo in a variable name. This extension highlights spelling errors in your code, keeping your codebase looking professional. 7. WakaTime Do you actually know how much time you spend coding? WakaTime generates beautiful dashboards showing exactly which languages, projects, and files you spent your time on each week. It is incredible for tracking your own
A client wanted to know who was on their site and on which page, the way Tidio's widget showed them — but without paying for a Tidio subscription, on an external WordPress site that doesn't use Firebase. The result: an external tracker hooked to an independent Firebase project, live presence via onDisconnect , persistent history in Firestore with IP geolocation — and a final debugging session where a browser CORS error was masking a server crash caused by an empty string instead of null . The context The client already had a third-party live-chat script installed on their site, and that's where the idea came from: "can we see who's on the site and on which page, without using that service?" Two constraints made the request less trivial than usual: the site hadn't been migrated to my usual stack yet — it was still running on WordPress, on different hosting — and there was no intention of introducing Firebase on the WordPress side. Step 1 — understanding what a live-chat widget actually does Before building anything, it was worth looking at what the already-installed script actually did. The tag pasted into the site was just a small loader: it creates a hidden iframe, loads the widget's real "brain" inside it from the provider's servers, which then connects via websocket to their backend to stream presence, current page and events in real time. The interesting part — "see who's on the site and on which page" — isn't in the public script: it all lives server-side at the provider, behind authentication, a proprietary dashboard and a subscription. There was nothing to "detach" from that service: it's client code tied to someone else's backend by design. But the pattern itself — a script tag hooking into an external backend — is exactly what's needed to build the same feature independently, and it fits well with Firebase, which has a native presence mechanism built for precisely this. Step 2 — live presence with Firebase Realtime Database Firebase Realtime Database has a
The speakers discuss Agent RFT, OpenAI’s platform for fine-tuning reasoning models via real-time tool interactions and custom reward signals. They explain how reinforcement learning solves complex credit assignment challenges within the context window. They share enterprise success stories, showing how Agent RFT eliminates long-tail token loops and drives extreme efficiency. By Wenjie Zi, Will Hang
When I published the first article about the Neuron AI Router , I expected questions about routing rules. Which rule to use for structured output, how to write a custom one, how the round robin behaves under load. Some of those questions arrived, but the most frequent one was different, and it wasn't really about routing at all. It was about failure. What happens to my agent when the provider goes down? It is a fair question, and if you are new to building AI applications it deserves a proper answer before we look at any code. Here is the short version. The new fallback strategy in Neuron AI Router lets you define an ordered list of LLM providers for your PHP agent. When an inference call fails with a transient error, such as a rate limit, a timeout, or an overloaded server, the same request is automatically retried on the next provider in the list. The failover is transparent: the agent never knows it happened, and the conversation continues without losing state. The rest of this article explains why this problem exists, why the usual solutions fall short, and how to configure it. Why LLM providers fail in production An LLM provider is an external service you talk to over HTTP. Every time your agent thinks, it is making a network call to a machine you don’t control, operated by a company that is currently serving millions of other requests. These services fail in very ordinary ways. You hit a rate limit because your traffic spiked. The provider returns an “overloaded” error because their traffic spiked. A request times out. A deployment on their side causes a few minutes of elevated error rates. None of this means you did something wrong, and none of it is rare. If you keep an agent in production long enough, you will see all of these. In a classic web application, a failed call to a third party API is usually a corner of the system. You log it, maybe retry it in a queue, and the rest of the page still works. In an agent based application the inference call is not
There is a ghost haunting the tech industry right now, and nobody wants to talk about it: The Junior Developer role is disappearing. With tools like GitHub Copilot, ChatGPT, and advanced coding agents becoming standard issue in every IDE, senior developers are suddenly 10x more productive. They no longer need a junior developer to write boilerplate code, write unit tests, or scaffold out basic UI components. The AI does it instantly. So, if you are a junior developer, or aspiring to break into tech, how do you survive? 1. Stop Memorizing Syntax, Start Thinking Architecturally AI is incredible at writing syntax, but it is terrible at system design. If your only skill is writing a for loop in React, you are competing with an AI that works for $20/month. Instead, focus on understanding how systems fit together. Learn about cloud architecture, database indexing, and distributed systems. The AI can write the function, but you have to know where that function lives and how it scales. 2. Become a "Domain Expert" Developer AI doesn't understand the nuanced business logic of the healthcare industry, or the strict compliance regulations of fintech. If you combine coding skills with deep industry knowledge, you become irreplaceable. 3. Embrace the Tools (Be the Orchestrator) Don't fight the AI. Master it. The developers who thrive in the next decade will be the ones who treat AI agents like a team of junior developers reporting to them. Learn how to craft the perfect prompts, how to use Retrieval-Augmented Generation (RAG), and how to orchestrate multiple LLMs to build complex applications. The barrier to entry for writing code has dropped to zero. But the barrier to entry for building valuable software remains exactly the same. Are you terrified of AI replacing you, or are you using it to level up?
The Shop on the Corner: How I Learned System Design Without Building Amazon Nephew asks his uncle — 10 years deep into building large-scale systems — to explain "system design," and all the scary jargon that comes with it. Uncle refuses to start with the jargon. Instead: "Forget servers and databases for a minute. Just imagine you're running a small shop." What follows is a thought experiment, built one problem at a time — no cloud bills, no fancy stack, just a counter, a storeroom, and a lot of common sense. Part 1: The Counter — Your First "API" 👦 Nephew: Uncle, everyone at work keeps throwing around terms — load balancer, cache, index, sharding. I nod along, but I don't actually get any of it. 👨🦳 Uncle: Then don't start there. Close your eyes for a second and forget servers exist. Suppose — just suppose — you're running a small shop. One counter, one small storeroom at the back. A customer walks up and asks for something. What do you do? 👦 Nephew: I'd walk into the storeroom, find it, walk back, hand it over. 👨🦳 Uncle: That's it. That's the entire job of a server handling a request. You don't need to understand Amazon's warehouse to understand Amazon's problems. You need a counter and a storeroom, imagined clearly, and the patience to grow them one honest problem at a time. Here's the shape of what you just described, whether you realized it or not: 🧍 Customer 🧑 You (Counter) 📦 Storeroom (Database) | | | |── "Got Maggi?" ───────>| | | |──── Walk in, search ────────>| | |<─────── Found it ────────────| |<── Hand it over, ──────| | | take payment | | 👨🦳 Uncle: One customer, one request, one trip to the storeroom, one response. This is fine. This is correct , even, for a shop with five customers a day. Don't let anyone tell you a single counter isn't "scalable" — a shop that small doesn't need two counters, it needs someone to stop worrying and open the shutter. 👦 Nephew: So this is just... a server handling one request at a time? 👨🦳 Uncle: Exactly. Customer sen
One of the most dramatic stories in the cyberspace I ever heard was the unfolding story of EternalBlue, a well known cyber weapon developed by the NSA that surfaced the internet back in 2016. In this blog, I'm going to narrate the story of how it all went down: The backstory, what EternalBlue is, and what damage it did. All this information is freely accessible on the internet. Talk about 'sit down and have some tea!' The NSA's Secret ToolBox So, I know you've heard of the NSA - National Security Agency; an intelligence agency in the US. NSA is responsible for monitoring and processing data for intelligence purposes, and protecting US communication networks and information systems. In 2013, the world got a massive leakage on the internet of the NSA ANT Catalogue. This leak gave us an inside scoop of what the NSA group really does (I'm not really sure who leaked this). So, what was the NSA ANT Catalogue? ANT stands for Advance Network Technology, and the NSA ANT Catalogue was a compiled list of hacks, exploits, and cyber tools that the NSA used. The items on the catalogue were used by the people working within NSA on specific missions. If you needed an exploit described on the catalogue, make a request and get the software. Now, this list is mind-blowing, I mean... the tools on here shouldn't even exist in my opinion, because if they were ever used on me, I'd feel completely exposed and violated! Some of the tools include: GOPHERSET — A hidden program on a phone's SIM card that secretly copies contacts, text messages, and call logs and sends them to the spies. DROPOUTJEEP — Spy software for iPhones that lets an agency remotely read texts, listen to voicemail, track location, and turn on the camera or microphone. COTTONMOUTH — A USB plug or cable that looks completely normal but secretly contains a hidden radio, letting spies get into a computer or network without needing internet access. MONKEYCALENDAR — A hidden program on a phone's SIM card that secretly texts the
The product drop had been planned for months. The direct-to-consumer subscription business had run three separate load tests, provisioned extra capacity for the launch window, and staffed a warroom across two time zones. The drop itself went cleanly. Two hours in, an unrelated video from a creator with a large following mentioned the product without warning, and the sign-up flow collapsed under a rush of new members for twenty-eight minutes. Customers were told the site was busy and to try again later. Some did. Most did not. The refund exposure was manageable. The customer acquisition exposure was not. What went wrong is not the interesting question. The system was under-provisioned for a specific traffic shape it had not seen before, and the team fixed it. The interesting question is what happened seven weeks later. A weather event redirected a wave of app traffic in an entirely different sector, at midnight on a Tuesday, without any warning. That system held, because a small group of engineers had spent those seven weeks quietly rebuilding assumptions about when peak load happens and what it looks like. The lesson from the product drop was not "provision more capacity for product drops." The lesson was that the mental model of peak load as a scheduled event had stopped being useful. This is another post in our series on the engineering layer underneath enterprise strategy. The previous post ( Sovereignty Versus Efficiency ) argued that sovereignty has become an architectural property that procurement cannot solve on its own. This post makes an analogous argument about load. Across banking, media, retail, travel, restaurant chains, and sport, the architectures built to survive named events are increasingly the wrong architectures for the traffic these businesses now routinely encounter. The discipline required has moved closer to what telecommunications engineers have always done, while the cost models have not caught up. What peak load used to mean For most of th
For open-weight LLMs, how practical is it to study defenses against post-release fine-tuning that weakens refusal or safety behavior? I've been seeing “uncensored” or “heretic” variants of new models appear very quickly after release, which raises a question I’m curious about: is fine-tuning resistance a meaningful safety goal for open-weight releases, or is it too narrow because determined users can always modify weights, switch models, or use other workarounds? And to a larger extent, is current safety training even worth the cost and effort if it takes 30 minutes and an automated script to break the model? I’m not asking about a specific method, just the threat model. What would count as a useful practical win here? For example, would increasing attacker cost or making safety removal less reliable be valuable, even if perfect prevention is impossible? Curious how people think about this from a model release, governance, and AI safety perspective. submitted by /u/Aaron_Rock [link] [留言]
As the parent of two little girls, I often think about how their childhood is different from mine. The seven-year-old is learning about AI at school. The five-year-old is given internet-based homework every week. And they are both absolutely repulsed by the idea of smoking. That was not the prevailing sentiment when I was young.…
House of the Dragon, Adventure Time: Side Quests, and The Man Will Burn are just a few of the TV shows you should be watching right now.
In September, some PlayStation customers will no longer be able to access some purchased movies and shows. It underscores the fact that digital purchases are really more like long-term rentals.