Scale AI without the Operational Headaches
Get ahead of AI operational challenges with management experts. Get ahead of AI operational challenges with management experts. Managed Services Blog | Dell
Get ahead of AI operational challenges with management experts. Get ahead of AI operational challenges with management experts. Managed Services Blog | Dell
Businesses rely on data. Discover how modern enterprises decide where data lives—on-prem, in the cloud, or both—and why it matters. Businesses rely on data. Discover how modern enterprises decide where data lives—on-prem, in the cloud, or both—and why it matters. Launch Blog | Dell
Empower your mission with Dell Federal 5G. See how our new radio & on-location orchestration deliver mission-ready connectivity. Empower your mission with Dell Federal 5G. See how our new radio & on-location orchestration deliver mission-ready connectivity. Government Blog | Dell
Apply lessons from cloud computing to keep your AI initiatives on track. Apply lessons from cloud computing to keep your AI initiatives on track. AI Services Blog | Dell
Discover how DispatchHealth delivers hospital-level care to patients’ homes by equipping clinicians with Dell AI PCs—enabling smarter clinical workflows and better patient outcomes. Discover how DispatchHealth delivers hospital-level care to patients’ homes by equipping clinicians with Dell AI PCs—enabling smarter clinical workflows and better patient outcomes. Customer Blog | Dell
See how Lightstorm and Dell power Avatar: Fire and Ash with advanced tech, scalable workflows and AI-driven rendering to create Pandora’s breathtaking visuals and seamless production. See how Lightstorm and Dell power Avatar: Fire and Ash with advanced tech, scalable workflows and AI-driven rendering to create Pandora’s breathtaking visuals and seamless production. Customer Blog | Dell
Modern IT is about foresight. Learn how Dell AIOps empowers smarter decisions and future-ready infrastructure management. Modern IT is about foresight. Learn how Dell AIOps empowers smarter decisions and future-ready infrastructure management. Observability Blog | Dell
Racing takes flight! Discover how Dell powers Airspeeder’s electric flying race cars and the future of mobility. Racing takes flight! Discover how Dell powers Airspeeder’s electric flying race cars and the future of mobility. Innovation Blog | Dell
Discover how Dell’s mobile, secure, and rugged 5G PCs are transforming the future of policing. Discover how Dell’s mobile, secure, and rugged 5G PCs are transforming the future of policing. Dell Pro Rugged Blog | Dell
Driving scalable and efficient IT for modern finance with secure thin client solutions. Driving scalable and efficient IT for modern finance with secure thin client solutions. Customer Blog | Dell
Sovereign AI is powering up in Europe. Discover how infrastructure, partnerships, and innovation are driving AI leadership. Sovereign AI is powering up in Europe. Discover how infrastructure, partnerships, and innovation are driving AI leadership. Agentic AI Blog | Dell
Hear highlights from JJ Davis on the Merco podcast about Dell’s Texas roots, building trust and fueling global impact. Hear highlights from JJ Davis on the Merco podcast about Dell’s Texas roots, building trust and fueling global impact. Awards Blog | Dell
Discover how a smarter private cloud drives innovation, adapts to business needs, and delivers real business outcomes. Discover how a smarter private cloud drives innovation, adapts to business needs, and delivers real business outcomes. Thought Leadership Blog | Dell
Dell, CrowdStrike and Intel stop breaches. Learn how our joint solution enriches threat detection with hardware-level visibility. Dell, CrowdStrike and Intel stop breaches. Learn how our joint solution enriches threat detection with hardware-level visibility. Endpoint Security Blog | Dell
Dell infrastructure powers the Massachusetts AI Hub, accelerating AI research and driving economic impact. Dell infrastructure powers the Massachusetts AI Hub, accelerating AI research and driving economic impact. Government Blog | Dell
We’ve been hard at work over the past few months to build the most usable and enjoyable AI agents for developers. To strike the right balance between usability and security, we’ve put together a set of guidelines to make sure that there’s always a human-in-the-loop element to everything we design. The more “agentic” an AI product is, the more it can actually do, enabling much richer workflows, but at the cost of a greater risk. With added functionality, there’s a greater chance and a much greater impact of the AI going off its guardrails, losing alignment, or even getting manipulated by a bad actor. Any of these could cause security incidents for our customers. To make these agents as secure as possible, we’ve built all of our hosted agents to maximize interpretability, minimize autonomy, and reduce anomalous behavior. Let’s dive into our threat model for our hosted agentic products, specifically Copilot coding agent. We’ll also examine how we’ve built security controls to mitigate these threats, and perhaps you’ll be able to apply these principles to your own agents. Security concerns When developing agentic features, we are primarily concerned with three classes of risks: Data exfiltration When an agent has Internet access, it could leak data from the context to unintended destinations. The agent may be tricked into sending data from the current repository to an unintended website, either inadvertently or maliciously. Depending on the sensitivity of data, this could result in a severe security incident, such as if an agent leaks a write access GitHub token to a malicious endpoint. Impersonation and proper action attribution When an agent undertakes an action, it may not be clear what permissions it should have or under whose direction it should operate. When someone assigns the Copilot coding agent to an issue, who issued the directive—the person who filed the issue or the person who assigned it to Copilot? And if an incident does occur as a result of something an agent did, how can we ensure proper accountability and traceability for the actions taken by the agent? Prompt injection Agents operate on behalf of the initiating user, so it’s very important to ensure that the initiating user knows what the agent is going to do. Agents are prompted from GitHub Issues, files within a repository, and many other places, so it’s important to ensure that the initiator has a clear picture of all the information guiding it. If not, malicious users could hide directives and trick repository maintainers into running agents with bad directives. Rules for agentic products To help prevent the above risks, we have created a set of rules for all of our hosted agentic products to make them more consistent and secure for our users. Ensuring all context is visible Allowing invisible context can allow malicious users to hide directives that maintainers may not be able to see. For example, in the Copilot coding agent, a malicious user may create a GitHub Issue that contains invisible Unicode with prompt injection instructions. If a maintainer assigns Copilot to this issue, this could result in a security incident as the maintainer would not have been aware of these invisible directives. To prevent this, we display the files from which context is generated and attempt to remove any invisible or masked information via Unicode or HTML tags before passing it to the agent. This ensures that only information that is clearly visible to maintainers is passed to the agent. Firewalling the agent As mentioned previously, having unfettered access to external resources can allow the agent to exfiltrate sensitive information or be prompt-injected by the external resource and lose alignment. We apply a firewall to the Copilot coding agent to limit its ability to access potentially harmful external resources. This allows users to configure the agent’s network access and block any unwanted connections. To balance security and usability, we automatically allow MCP interactions to bypass the firewall.. In our other agentic experiences like Copilot Chat, we do not automatically execute code. For example, when generating HTML, the output is initially presented as code for preview. A user must manually enable the rich previewing interface, which executes the HTML. Limiting access to sensitive information The easiest way to prevent an agent from exfiltrating sensitive data is… to not give access to it in the first place! We only give Copilot information that is absolutely necessary for it to function. This means that things like CI secrets and files outside the current repository are not automatically passed to agents. Specific sensitive content, such as the GitHub token for the Copilot coding agent, is revoked once the agent has completed its session. Preventing irreversible state changes AI can and will make mistakes. To prevent these mistakes from having downstream effects that cannot be fixed, we make sure that our agents are not able to initiate any irreversible state changes without a human in the loop. For example, the Copilot coding agent is only able to create pull requests; it is not able to commit directly to a default branch. Pull requests created by Copilot do not run CI automatically; a human user must validate the code and manually run GitHub Actions. In our Copilot Chat feature, MCP interactions ask for approval before undertaking any tool calls. Consistently attributing actions to both initiator and agent Any agentic interaction initiated by a user is clearly attributed to that user, and any action taken by the agent is clearly attributed to the agent. This ensures a clear chain of responsibility for any actions. For example, pull requests created by the Copilot coding agent are co-committed by the user who initiated the action. Pull requests are generated using the Copilot identity to make it clear that they were AI-generated. Only gathering context from authorized users We ensure that agents gather context only from authorized users. This means that agents must always operate under the permissions and context granted by the user who initiated the interaction. The Copilot coding agent can
When we shared this year’s Octoverse data with Guido van Rossum, the creator of Python, his first reaction was genuine surprise. While TypeScript overtook Python to become the most used language on GitHub as of August 2025 (marking the biggest language shift in more than a decade), Python still grew 49% year over year in 2025, and remains the default language of AI, science, and education for developers across the world. “I was very surprised by that number,” Guido told us, noting how this result is different from other popularity trackers like the TIOBE Index. To learn more, we sat down with Guido for a candid conversation about Python’s roots, its ever-expanding reach, and the choices—both big and small—that have helped turn a one-time “hobby project” into the foundation for the next generation of developers and technologies. Watch the full interview above. 👆 📦 What is Python? Python is a high-level, general-purpose programming language created by Guido van Rossum in 1991. It’s designed to be readable, intuitive, and easy to learn—using clean indentation instead of braces, friendly error messages, and a massive standard library. Developers use Python for everything from data science and AI to web apps, automation, scripting, scientific computing, and education. Its ecosystem includes widely used tools like NumPy, pandas, Django, FastAPI, PyTorch, and Jupyter. Because it’s open source, cross-platform, and backed by a huge global community, Python remains one of the most accessible and versatile languages in the world. The origins of Python For Guido, Python began as a tool to solve the very real (and very painful) gap between C’s complexity and the limitations of shell scripting. I wanted something that was much safer than C, and that took care of memory allocation, and of all the out of bounds indexing stuff, but was still an actual programming language. That was my starting point. Guido van Rossum, creator of Python He was working on a novel operating system, and the only available language was C. “In C, even the simplest utility that reads two lines from input becomes an exercise in managing buffer overflows and memory allocation,” he says. Shell scripts weren’t expressive enough, and C was too brittle. Building utilities for a new operating system showed just how much friction existed in the developer workflow at the time. Guido wanted to create language that served as a practical tool between the pain of C and the limits of shell scripting. And that led to Python, which he designed to take care of the tough parts, and let programmers focus on what matters. Python’s core DNA—clarity, friendliness, and minimal friction—was baked in from the beginning, too. It’s strangely fitting that a language that started as such a practical project now sits at the center of open source, AI, data science, and enterprise AI. Why TypeScript pulled ahead in 2025: Guido’s view Python held the top spot on GitHub for most of 2024 and half of 2025. But by August, TypeScript took the lead—and that surprised Guido. He offered several possible explanations: Modern static websites are checked into GitHub Modern JavaScript frameworks scaffold with TypeScript GitHub’s data reflects public and open source activity vs. global usage “If you’re writing JavaScript today, the logical conclusion is to use TypeScript,” Guido says. But he doesn’t view this competitively. He treats data like a puzzle, not a threat. Monty Python and the language’s personality Unlike other programming languages named for ancient philosophers or stitched-together acronyms, Python’s namesake comes from Monty Python’s Flying Circus. “I wanted to express a little irreverence,” Guido says. “A slight note of discord in the staid world of computer languages.” The name “Python” wasn’t a joke—it was a design choice, and a hint that programming doesn’t have to feel solemn or elitist. That sense of fun and accessibility has become as valuable to Python’s brand as its syntax. Ask practically anyone who’s learned to code with Python, and they’ll talk about its readability, its welcoming error messages, and the breadth of community resources that flatten that first steep climb. If you wrote something in Python last week and, six months from now, you’re reading that code, it’s still clear. Python’s clarity and user friendliness compared to Perl was definitely one of the reasons why Python took over Perl in the early aughts. Python and AI: ecosystem gravity and the NumPy to ML to LLM pipeline Python’s influence in AI isn’t accidental. It’s a signal of the broader ecosystem compounding on itself. Today, some of the world’s fastest-growing AI infrastructure is built in Python, such as PyTorch and Hugging Face Transformers. So, why Python? Guido credits the ecosystem around Python as the primary cause: after all, once a particular language has some use and seems to be a good solution, it sparks an avalanche of new software in that language, so it can take advantage of what already exists. Moreover, he points to key Python projects: NumPy: foundational numerical arrays pandas: making data manipulation easier PyTorch: Machine learning at scale Local model runners and LLM agents: Today’s frontier with projects like ollama leading the charge. The people now writing things for AI are familiar with Python because they started out in machine learning. Python isn’t just the language of AI. It enabled AI to become what it is today. That’s due, in part, to the language’s ability to evolve without sacrificing approachability. From optional static typing to a treasure trove of open source packages, Python adapts to the needs of cutting-edge fields without leaving beginners behind. Does Python need stronger typing in the LLM era? Guido says no. With AI generating more Python than ever, the natural question is: does Python need stricter typing? Guido’s answer was immediate: “I don’t think we need to panic and start doing a bunch of things that might make things easier for AI.” He believes Python’s optional typing system—while imperfect—is “plenty.” AI should adapt to us, not the other way around. He also offered a key insight: The biggest issue
Finding the right gift for the developers on your list shouldn’t feel like chasing an intermittent bug. We’re here to give you our top tips for finding the perfect gift for them. (Or just for you, you know you deserve it.) From vibe code to holiday mode Move straight from shipping code to holiday mode with the ugly holiday socks and beanie. Made with 49% merino wool, the socks keep your feet warm, while the 100% wool beanie handles the rest. Pair them with the ugly sweater to finish the look. 🎁 And they’re all included in our Black Friday sale—so grab them before they’re gone. The answer to life’s biggest questions “Should I push to prod on New Year’s Eve?” “Should I eat more of my favorite holiday dish?” “Should I create another side project in 2026?” The GitHub Copilot Amazeball will have the answer for these questions, and many, many more. It’ll get you on your path. Is it the right path? We don’t have the answer for that. Stay hydrated (and caffeinated) A good day starts with a coffee, right? We’ve got the solution to all your hot beverage needs, whether you’re on the go with our Invertocat orb bottle, at your desk with our “Ship It” diner mug (on sale now) or deep in the forest with our Invertocat MiiR camp mug (also works on the school run). And, of course, staying hydrated is important too, and nothing will help you more than our Stanley cup or Invertocat Asobu Marina tumbler (which also has a coffee cup built in, just saying). Get them both in our Black Friday sale. Level up your workspace Have you seen our latest key caps? They may not help you ship code faster, but they do look great. They’re an easy office gift or the perfect extra touch for a holiday present. The recycled desk mat helps your mouse glide smoothly across your workspace. Sophisticated and sleek… well, not exactly. This desk mat is loud, proud, and unmistakably GitHub—with Octocats from edge to edge. A fan favorite on social media, our MiiR backpack is here to get you to the office, to the plane and everywhere in between. A holiday must-have. For future builders Encourage curiosity early. For the little builders in your life, we have our very cosy youth ASCII Invertocat pullover, along with our ASCII Invertocat tee. Want to do some holiday matching? We have the ASCII Cube tee in both youth and adult sizes. Take advantage of our Black Friday sale Giving the perfect gift feels great. Getting it at a solid discount feels even better. From November 26 to December 7, our Black Friday sale offers markdowns on some of these picks and plenty more across the shop. See everything on sale, and check our holiday order deadlines to ensure your gifts arrive on time. From all of us at the GitHub Shop: here’s to a December packed with good gifts, good energy, and the occasional sprint to finish that last bit of code. Have a joyful holiday season. The post The ultimate gift guide for the developer in your life appeared first on The GitHub Blog. Company news, News & insights, GitHub Shop The GitHub Blog
We recently shipped Agent HQ’s mission control, a unified interface for managing GitHub Copilot coding agent tasks. Now, you can now assign tasks to Copilot across repos, pick a custom agent, watch real‑time session logs, steer mid-run (pause, refine, or restart), and jump straight into the resulting pull requests—all in one place. Instead of bouncing between pages to see status, rationale, and changes, mission control centralizes assignment, oversight, and review. Having the tool is one thing. Knowing how to use it effectively is another. This guide shows you how to orchestrate multiple agents, when to intervene, and how to review their work efficiently. Being great at orchestrating agents means unblocking parallel work in the same timeframe you’d spend on one task, stepping in when logs show drift, tests fail, or scope creeps. The mental model shift From sequential to parallel If you’re already used to working with an agent one at a time, you know it’s inherently sequential. You submit a prompt, wait for a response, review it, make adjustments, and move to the next task. Mission control changes this. You can kick off multiple tasks in minutes—across one repo or many. Previously, you’d navigate to different repos, open issues in each one, and assign Copilot separately. Now you can enter prompts in one place, and Copilot coding agent goes to work across all of them. That being said, there is a trade-off to keep in mind: Instead of each task taking30 seconds to a few minutes to complete, your agents might spend a few minutes to an hour on a draft. But you’re no longer just waiting. You’re orchestrating. When to stay sequential Not everything belongs in parallel. Use sequential workflows when: Tasks have dependencies You’re exploring unfamiliar territory Complex problems require validating assumptions between steps When assigning multiple tasks from the same repo, consider overlap. Agents working in parallel can create merge conflicts if they touch the same files. Be thoughtful about partitioning work. Tasks that typically run well in parallel: Research work (finding feature flags, configuration options) Analysis (log analysis, performance profiling) Documentation generation Security reviews Work in different modules or components Tips for getting started The shift is simple: you move from waiting on a single run to overseeing multiple progressing in parallel, stepping in for failed tests, scope drift, or correcting unclear intent where guidance will save time. Write clear prompts with context Specificity matters. Describe the task precisely. Good context remains critical for good results. Helpful context includes: Screenshots showing the problem Code snippets illustrating the pattern you want Links to relevant documentation or examples Weak prompt: “Fix the authentication bug.” Strong prompt: “Users report ‘Invalid token’ errors after 30 minutes of activity. JWT tokens are configured with 1-hour expiration in auth.config.js. Investigate why tokens expire early and fix the validation logic. Create the pull request in the api-gateway repo.” Use custom agents for consistency Mission control lets you select custom agents that use agents.md files from your selected repo. These files give your agent a persona and pre-written context, removing the burden of constantly providing the same examples or instructions. If you manage repos where your team regularly uses agents, consider creating agents.md files tailored to your common workflows. This ensures consistency across tasks and reduces the cognitive load of crafting detailed prompts each time. Once you’ve written your prompt and selected your custom agent (if applicable), kick off the task. Your agent gets to work immediately. How to write a great agents.md Most agents.md files fail because they are too vague. I analyzed 2,500 agent instruction files to learn what the good ones were doing differently. Read the guide to see what makes those stand out, and which agents you should consider building today. Tips for active orchestration You’re now a conductor of agents. Each task might take a minute or an hour, depending on complexity. You have two choices: watch your agents work so you can intervene if needed, or step away and come back when they’re done. Reading the signals Below are some common indicators that your agent is not on the right track and needs additional guidance: Failing tests, integrations, or fetches: The agent can’t fetch dependencies, authentication fails, or unit tests break repeatedly. Unexpected files being created: Files outside the scope appear in the diff, or the agent modifies shared configuration. Scope creep beyond what you requested: The agent starts refactoring adjacent code or “improving” things you didn’t ask for. Misunderstanding your intent: The session log reveals the agent interpreted your prompt differently than you meant. Circular behavior: The agent tries the same failing approach multiple times without adjusting. When you spot issues, evaluate their severity. Is that failing test critical? Does that integration point matter for this task? The session log typically shows intent before action, giving you a chance to intervene if you’re monitoring. The art of steering When you need to redirect an agent, be specific. Explain why you’re redirecting and how you want it to proceed. Bad steering: “This doesn’t look right.” Good steering: “Don’t modify database.js—that file is shared across services. Instead, add the connection pool configuration in api/config/db-pool.js. This keeps the change isolated to the API layer.” Timing matters. Catch a problem five minutes in, and you might save an hour of ineffective work. Don’t wait until the agent finishes to provide feedback. You can also stop an agent mid-task and give it refined instructions. Restarting with better direction is simple and often faster than letting a misaligned agent continue. Why session logs matter Session logs show reasoning, not just actions. They reveal misunderstandings before they become pull requests, and they improve your future prompts and orchestration practices. When Copilot says “I’m going to refactor the entire authentication system,” that’s your cue to steer. Tips for the review phase When your agents finish, you’ll have pull requests to review. Here’s how to do it efficiently. Ensure you review: Session logs: Understand what the agent did and why. Look for reasoning errors
Franck Nijhof—better known as Frenck—is one of those maintainers who ended up at the center of a massive open source project not because he chased the spotlight, but because he helped hold together one of the most active, culturally important, and technically demanding open source ecosystems on the planet. As a lead of Home Assistant and a GitHub Star, Frenck guides the project that didn’t just grow. It exploded. This year’s Octoverse report confirms it: Home Assistant was one of the fastest-growing open source projects by contributors, ranking alongside AI infrastructure giants like vLLM, Ollama, and Transformers. It also appeared in the top projects attracting first-time contributors, sitting beside massive developer platforms such as VS Code. In a year dominated by AI tooling, agentic workflows, and typed language growth, Home Assistant stood out as something else entirely: an open source system for the physical world that grew at an AI-era pace. The scale is wild. Home Assistant is now running in more than 2 million households, orchestrating everything from thermostats and door locks to motion sensors and lighting. All on users’ own hardware, not the cloud. The contributor base behind that growth is just as remarkable: 21,000 contributors in a single year, feeding into one of GitHub’s most lively ecosystems at a time when a new developer joins GitHub every second. In our podcast interview, Frenck explains it almost casually. Home Assistant is a free and open source home automation platform. It allows you to connect all your devices together, regardless of the brands they’re from… And it runs locally. Franck Nijhof, lead of Home Assistant He smiles when he describes just how accessible it is. “Flash Home Assistant to an SD card, put it in, and it will start scanning your home,” he says. This is the paradox that makes Home Assistant compelling to developers: it’s simple to use, but technically enormous. A local-first, globally maintained automation engine for the home. And Frenck is one of the people keeping it all running. 📌 What is Home Assistant? Home Assistant is an open-source home automation platform designed for maximum local control, privacy, and interoperability. It enables you to connect, orchestrate, and automate thousands of devices from hundreds of vendors—all running on hardware in your home (e.g., a Raspberry Pi) and without sending data to the cloud. The core engine is written in Python and supported by front-end components in TypeScript and other languages. Developers build integrations in a community-wide effort that has grown to tens of thousands of contributors and millions of installations. The architecture built to tame thousands of device ecosystems At its core, Home Assistant’s problem is combinatorial explosion. The platform supports “hundreds, thousands of devices… over 3,000 brands,” as Frenck notes. Each one behaves differently, and the only way to normalize them is to build a general-purpose abstraction layer that can survive vendor churn, bad APIs, and inconsistent firmware. Instead of treating devices as isolated objects behind cloud accounts, everything is represented locally as entities with states and events. A garage door is not just a vendor-specific API; it’s a structured device that exposes capabilities to the automation engine. A thermostat is not a cloud endpoint; it’s a sensor/actuator pair with metadata that can be reasoned about. That consistency is why people can build wildly advanced automations. Frenck describes one particularly inventive example: “Some people install weight sensors into their couches so they actually know if you’re sitting down or standing up again. You’re watching a movie, you stand up, and it will pause and then turn on the lights a bit brighter so you can actually see when you get your drink. You get back, sit down, the lights dim, and the movie continues.” A system that can orchestrate these interactions is fundamentally a distributed event-driven runtime for physical spaces. Home Assistant may look like a dashboard, but under the hood it behaves more like a real-time OS for the home. Running everything locally is not a feature. It’s a hard constraint. Almost every mainstream device manufacturer has pivoted to cloud-centric models. Frenck points out the absurdity: It’s crazy that we need the internet nowadays to change your thermostat. The local-first architecture means Home Assistant can run on hardware as small as a Raspberry Pi but must handle workloads that commercial systems offload to the cloud: device discovery, event dispatch, state persistence, automation scheduling, voice pipeline inference (if local), real-time sensor reading, integration updates, and security constraints. This architecture forces optimizations few consumer systems attempt. If any of this were offloaded to a vendor cloud, the system would be easier to build. But Home Assistant’s philosophy reverses the paradigm: the home is the data center. Everything from SSD wear leveling on the Pi to MQTT throughput to Zigbee network topologies becomes a software challenge. And because the system must keep working offline, there’s no fallback. This is engineering with no safety net. The open home foundation: governance as a technical requirement When you build a system that runs in millions of homes, the biggest long-term risk isn’t bugs. It’s ownership. “It can never be bought, it can never be sold,” Frenck says of Home Assistant’s move to the Open Home Foundation. “We want to protect Home Assistant from the big guys in the end.” This governance model isn’t philosophical; it is an architectural necessity. If Home Assistant ever became a commercial acquisition, cloud lock-in would follow. APIs would break. Integrations would be deprecated. Automations built over years would collapse. The Foundation encodes three engineering constraints that ripple through every design decision: Privacy: “Local control and privacy first.” All processing must occur on-device. Choice: “You should be able to choose your own devices” and expect them to interoperate. Sustainability: If a vendor kills its cloud service, the device must still work. Frenck calls out Nest as an example: “If some manufacturer turns off the cloud service… that turns into e-waste.” This is more than governance; it is technical infrastructure. It dictates API longevity, integration strategy, reverse