<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sam Amderson</title>
    <description>The latest articles on DEV Community by Sam Amderson (@samamderson).</description>
    <link>https://dev.to/samamderson</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4207993%2Fa641068d-0be4-4cb7-a2c3-7908b5206bc3.png</url>
      <title>DEV Community: Sam Amderson</title>
      <link>https://dev.to/samamderson</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/samamderson"/>
    <language>en</language>
    <item>
      <title>What Is Agentic Software? How AI Agents Plan and Execute Workflows</title>
      <dc:creator>Sam Amderson</dc:creator>
      <pubDate>Mon, 02 Nov 2026 09:05:55 +0000</pubDate>
      <link>https://dev.to/samamderson/what-is-agentic-software-how-ai-agents-plan-and-execute-workflows-oo</link>
      <guid>https://dev.to/samamderson/what-is-agentic-software-how-ai-agents-plan-and-execute-workflows-oo</guid>
      <description>&lt;p&gt;Agentic software is software that pursues a goal on its own. Instead of following fixed screens and scripted rules, it uses AI agents that plan the steps, call tools and enterprise systems, remember context, and adjust when something fails. &lt;/p&gt;

&lt;p&gt;That is the short answer to what is agentic software, and it changes how engineering teams build and run workflows. &lt;/p&gt;

&lt;p&gt;The planning loop, tool access, multi-agent orchestration, and guardrails decide whether agentic software development works in production or stalls after the pilot.&lt;/p&gt;

&lt;h2&gt;
  
  
  Enterprise Teams Asking What Is Agentic Software Need a Different Execution Model Than Fixed Application Logic
&lt;/h2&gt;

&lt;p&gt;Traditional applications run on logic someone wrote in advance. A user clicks, the code follows a set path, and the result appears. When a case falls outside that path, the application fails or waits for a person. &lt;/p&gt;

&lt;p&gt;Agentic software works differently. You give it a goal, and it works out the route. That is why enterprise teams asking what is agentic software are really asking who decides the next step, the developer at design time or the system at run time.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Question&lt;/th&gt;
&lt;th&gt;Fixed application&lt;/th&gt;
&lt;th&gt;Agentic software&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Who sets the steps?&lt;/td&gt;
&lt;td&gt;Developer, in advance&lt;/td&gt;
&lt;td&gt;Agent, at run time&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;What happens on an edge case?&lt;/td&gt;
&lt;td&gt;Error or manual hand-off&lt;/td&gt;
&lt;td&gt;Re-plan and try another route&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;How does it reach other systems?&lt;/td&gt;
&lt;td&gt;Hard-coded integrations&lt;/td&gt;
&lt;td&gt;Tools chosen per task&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;OpenAI's 2025 guide for builders describes agents as systems that finish tasks on a user's behalf with a lot of independence. That independence turns software from a tool into a worker, and it is the core idea behind the new software factory model of delivery.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Planning Loop Inside Agentic Software Architecture: Goals, Task Decomposition, and Re-Planning
&lt;/h2&gt;

&lt;p&gt;Every agent runs a loop. It reads the goal, picks a step, acts, checks the result, and decides what comes next. This loop is the heart of agentic software architecture, and it is what separates AI agents planning and execution from a single prompt and reply. &lt;/p&gt;

&lt;p&gt;A model answers once. An agent keeps working until the goal is met, a limit is hit, or a person steps in. The quality of that loop decides whether the system finishes real work or wanders off task.&lt;/p&gt;

&lt;h3&gt;
  
  
  Goal Intake and Task Decomposition in Agentic Software Architecture
&lt;/h3&gt;

&lt;p&gt;The agent first turns a broad goal into small, checkable tasks. A request like onboarding a new supplier becomes four tasks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Collect documents&lt;/li&gt;
&lt;li&gt;Verify details&lt;/li&gt;
&lt;li&gt;Create records&lt;/li&gt;
&lt;li&gt;Notify the owner&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each task has a clear finish line. In software builds, the strongest pattern is a plan that people can read and approve before any code is written, so agents start only after sign-off. Clear tasks keep the agent focused and make its work easy to review.&lt;/p&gt;

&lt;h3&gt;
  
  
  Re-Planning After a Failed Step in Autonomous Task Execution
&lt;/h3&gt;

&lt;p&gt;Plans break. An interface changes, a record is missing, or a check fails. Fixed logic stops here. An agent handles autonomous task execution by reading the failure, adjusting the plan, and trying another route. &lt;/p&gt;

&lt;p&gt;Good designs cap the number of retries and log every change, so a stuck agent hands off to a person instead of looping forever. Teams should test these failure paths first, because they show how the system behaves on its worst day, not its best one.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tool Calling and Memory as the Bridge Between AI Agents Planning and Execution and Enterprise Systems
&lt;/h2&gt;

&lt;p&gt;A plan means little if the agent cannot act. Tool calling and memory close that gap. Tools let the agent call a service, query a database, or file a ticket. Memory lets it carry facts from one step to the next, so it does not repeat work or lose context. &lt;/p&gt;

&lt;p&gt;Together they form the agentic AI execution layer that connects a decision to a real system change. Without them, an agent can only describe work. With them, it can finish it.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Scope each tool.&lt;/strong&gt; Give every tool the least access it needs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Log every call.&lt;/strong&gt; Record inputs, outputs, and who approved them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Separate memory types.&lt;/strong&gt; Keep short-term task state apart from long-term records.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Teams that skip these controls tend to find the problem during an audit, not during a demo.&lt;/p&gt;

&lt;h2&gt;
  
  
  Multi-Agent Orchestration in Agentic Workflow Automation: Splitting Work Across Specialized Agents
&lt;/h2&gt;

&lt;p&gt;One agent can handle a narrow job. Complex work needs more. Multi-agent orchestration splits a workflow across specialized agents, each with a clear role, and a coordinator keeps them aligned. &lt;/p&gt;

&lt;p&gt;OpenAI's guide describes two common patterns: a manager that delegates to specialists, and peers that hand control to each other. McKinsey describes an agentic AI mesh as the connecting layer that lets many agents run safely at scale. &lt;/p&gt;

&lt;p&gt;For agentic workflow automation, this structure matters more than any single model.&lt;/p&gt;

&lt;h3&gt;
  
  
  Role Separation Across Enterprise AI Agents
&lt;/h3&gt;

&lt;p&gt;Role separation keeps each agent simple. One agent reads incoming requests. Another pulls records from enterprise systems. A third checks the result against the rules. Because each role is narrow, its prompts, tools, and tests stay small and easy to fix. &lt;/p&gt;

&lt;p&gt;Enterprise AI agents built this way also fail in smaller pieces, which makes a bad output easier to trace to its source. Broad, do-everything agents tend to hide their mistakes inside long, tangled reasoning.&lt;/p&gt;

&lt;h3&gt;
  
  
  Hand-Off Rules and Shared Context in Multi-Agent Orchestration
&lt;/h3&gt;

&lt;p&gt;Most multi-agent failures happen at the hand-off. Agent A finishes, but Agent B lacks a key fact. Fix this with a written contract for every hand-off.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Hand-off element&lt;/th&gt;
&lt;th&gt;What to define&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Input&lt;/td&gt;
&lt;td&gt;Fields the next agent needs&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Output&lt;/td&gt;
&lt;td&gt;Format and allowed values&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Context&lt;/td&gt;
&lt;td&gt;What memory is passed along&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Failure&lt;/td&gt;
&lt;td&gt;Who gets the task if it stalls&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Shared context should travel with the task, not live in one agent's head. That way any agent can pick up the work.&lt;/p&gt;

&lt;h3&gt;
  
  
  Parallel Tracks and Dependency Control in Agentic Workflow Automation
&lt;/h3&gt;

&lt;p&gt;Specialized agents can work at the same time when their tasks do not depend on each other. A backend agent and a frontend agent, for example, can build against one shared plan. &lt;/p&gt;

&lt;p&gt;Dependencies still need a gatekeeper. Mark which tasks must finish first, and let the coordinator hold others until then. &lt;/p&gt;

&lt;p&gt;Parallel tracks cut waiting time, but only when ownership is clear. Two agents editing the same file or record will undo each other's work.&lt;/p&gt;

&lt;h2&gt;
  
  
  Failure Modes and Guardrails for Enterprise AI Agents Running Production Workflows
&lt;/h2&gt;

&lt;p&gt;Agents fail in ways that classic software does not. They can pick the wrong tool, act on stale data, or repeat a step many times. A wrong answer in a chat window is an annoyance. A wrong action in a payment or records system is an incident. &lt;/p&gt;

&lt;p&gt;OpenAI's guide advises human review for high-risk actions and for cases where an agent keeps failing. Treat that advice as a design rule, not a patch added after launch. Guardrails work best in layers.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Approval gates for actions that move money, change records, or contact customers.&lt;/li&gt;
&lt;li&gt;Spending and retry limits so one stuck run cannot drain the budget.&lt;/li&gt;
&lt;li&gt;Step-level logs that show every tool call and decision.&lt;/li&gt;
&lt;li&gt;Fallback owners who receive any task the agent cannot finish.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Readiness Signals Before Adopting Agentic Software Development Across Engineering Teams
&lt;/h2&gt;

&lt;p&gt;Not every team is ready to run agentic software development on real systems. The strongest candidates share a few traits, and most are about process, not models. &lt;/p&gt;

&lt;p&gt;Teams with clear requirements, test coverage, and named owners get value fastest. Teams with unclear rules and tangled systems should fix those first. &lt;/p&gt;

&lt;p&gt;Use the checklist below as a quick gate before a pilot moves toward production. A short gate review costs little and exposes weak spots early. Each item should have a named owner and a yes or no answer.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Requirements are written down and testable.&lt;/li&gt;
&lt;li&gt;Automated tests exist for the code agents will touch.&lt;/li&gt;
&lt;li&gt;Every tool and system has a named owner.&lt;/li&gt;
&lt;li&gt;Approval rules for risky actions are defined.&lt;/li&gt;
&lt;li&gt;Logs can show each agent step to a reviewer.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Xccelera AI and the Move From Experiments to Agentic Software Development at Enterprise Scale
&lt;/h2&gt;

&lt;p&gt;Most teams can build an agent demo. Fewer can run agentic software across a full delivery cycle with the controls an enterprise needs. That gap is where a platform approach helps. &lt;/p&gt;

&lt;p&gt;Xccelera AI works on it with a multi-agent platform in which specialized agents handle backend, frontend, integration, validation, unit testing, and deployment in parallel, while people keep approval rights at the points that matter. &lt;/p&gt;

&lt;p&gt;Each agent and its output stays visible from start to finish, so leaders can see what was built, why, and who signed off.&lt;/p&gt;

&lt;p&gt;For decision makers, the practical test is simple. Can the system explain every step it took? &lt;/p&gt;

&lt;p&gt;If the answer is yes, scaling from one team to many becomes a management decision instead of a leap of faith.&lt;/p&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>automation</category>
      <category>softwareengineering</category>
    </item>
    <item>
      <title>7 Questions to Ask Before Starting an Enterprise AI Project</title>
      <dc:creator>Sam Amderson</dc:creator>
      <pubDate>Fri, 30 Oct 2026 11:31:10 +0000</pubDate>
      <link>https://dev.to/samamderson/7-questions-to-ask-before-starting-an-enterprise-ai-project-5g72</link>
      <guid>https://dev.to/samamderson/7-questions-to-ask-before-starting-an-enterprise-ai-project-5g72</guid>
      <description>&lt;p&gt;Most enterprise AI projects don't fail because the model was bad. They stall because nobody agreed on what "done" means, the data lives in a system no one can reach, or the security review shows up in week ten.&lt;/p&gt;

&lt;p&gt;Questions are cheap in week zero and expensive in week twelve. Here are seven I'd want answered before anyone opens an IDE, with what a good answer looks like and what should make you pause.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. What problem are we solving, and how will we know it worked?
&lt;/h2&gt;

&lt;p&gt;"We need an AI strategy" is not a problem. "Tier-1 support agents spend too long routing tickets" is.&lt;/p&gt;

&lt;p&gt;A good answer names one workflow, one team that feels the pain, and a number you can measure today. If you can't state the baseline (time per task, error rate, cost per case), you can't prove the project helped, and the first budget review will be painful.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Good answer:&lt;/strong&gt; a single use case, a baseline metric, and a target someone has agreed to be held to.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Red flag:&lt;/strong&gt; the success criteria are "improve efficiency" or "get ahead of competitors."&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Is our data actually ready?
&lt;/h2&gt;

&lt;p&gt;Teams routinely discover this one halfway through the build. Before committing, check:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Access:&lt;/strong&gt; can the system read the data through an API, or is it locked in exports and spreadsheets?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Quality:&lt;/strong&gt; is it complete and consistent enough to trust, or does it need weeks of cleanup?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Freshness:&lt;/strong&gt; how stale is it by the time the AI sees it?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Permissions:&lt;/strong&gt; does the AI inherit the same access rules a human user would have?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ownership:&lt;/strong&gt; is there a named person who can fix the source when it's wrong?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;An AI agent that confidently answers from outdated or over-shared data is worse than no agent at all.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Good answer:&lt;/strong&gt; the sources are named, reachable, and owned.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Red flag:&lt;/strong&gt; "the data is in a few places, we'll figure it out."&lt;/p&gt;

&lt;h2&gt;
  
  
  3. How will this connect to the systems we already run?
&lt;/h2&gt;

&lt;p&gt;Enterprise AI rarely lives alone. It has to read from the CRM, write to the ticketing system, and authenticate through your existing identity provider.&lt;/p&gt;

&lt;p&gt;Ask early:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which systems does it need to read from, and which will it write to?&lt;/li&gt;
&lt;li&gt;Do those systems have stable, documented APIs, or are we wrapping something legacy?&lt;/li&gt;
&lt;li&gt;How will the AI authenticate, and with what level of privilege?&lt;/li&gt;
&lt;li&gt;Is there a gateway or integration layer, or will every agent build its own point-to-point connections?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Point-to-point integrations feel fast in a pilot and become unmaintainable at the third agent. A shared integration layer costs more up front and pays for itself quickly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Good answer:&lt;/strong&gt; a list of systems, how each is accessed, and a least-privilege auth plan.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Red flag:&lt;/strong&gt; the integration plan is "use the admin credentials for now."&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Who owns it, and who is accountable when it's wrong?
&lt;/h2&gt;

&lt;p&gt;AI systems will make mistakes. The question is whether anyone is responsible for catching them.&lt;/p&gt;

&lt;p&gt;Decide in advance:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Who is the product owner, and who is on call when it misbehaves?&lt;/li&gt;
&lt;li&gt;Which decisions can the system make alone, and which need a human to approve?&lt;/li&gt;
&lt;li&gt;What does escalation look like when the confidence is low?&lt;/li&gt;
&lt;li&gt;How do users report a bad answer, and where does that feedback go?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Human-in-the-loop isn't a sign of a weak system. It's usually what lets you ship the first version at all.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Good answer:&lt;/strong&gt; a named owner, a clear autonomy boundary, and an escalation path.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Red flag:&lt;/strong&gt; "the model will handle it."&lt;/p&gt;

&lt;h2&gt;
  
  
  5. What are our security, compliance, and governance requirements?
&lt;/h2&gt;

&lt;p&gt;Bring security and compliance in during discovery, not at the launch gate. The questions are different from traditional software:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What data will reach the model, and does any of it include PII or regulated information?&lt;/li&gt;
&lt;li&gt;Where is that data processed and stored, and does residency matter for us?&lt;/li&gt;
&lt;li&gt;Which models and providers are approved?&lt;/li&gt;
&lt;li&gt;What gets logged, and can we audit why the system made a given decision?&lt;/li&gt;
&lt;li&gt;How do we handle prompt injection and untrusted input when the agent can take actions?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If your organization already has an AI policy, read it first. If it doesn't, expect these questions to become the policy.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Good answer:&lt;/strong&gt; requirements are written down, and security has seen the architecture.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Red flag:&lt;/strong&gt; compliance hasn't heard about the project yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  6. What will it cost to run, and to keep running?
&lt;/h2&gt;

&lt;p&gt;The prototype's bill is not the production bill. Budget for the whole lifecycle:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Inference cost per request, at the volume you expect after launch&lt;/li&gt;
&lt;li&gt;Evaluation, monitoring, and logging infrastructure&lt;/li&gt;
&lt;li&gt;Ongoing prompt, model, and data maintenance as things drift&lt;/li&gt;
&lt;li&gt;The engineering time to support it, which is usually the biggest line&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Work out the unit economics. If one automated task costs more than the manual one it replaces, you need to know that before scaling, not after.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Good answer:&lt;/strong&gt; a cost per request, a monthly ceiling, and a comparison with the current process.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Red flag:&lt;/strong&gt; the only number anyone has is the pilot's API bill.&lt;/p&gt;

&lt;h2&gt;
  
  
  7. How do we get from pilot to production, and what's our exit plan?
&lt;/h2&gt;

&lt;p&gt;Plenty of pilots impress in a demo and die in review because no one planned the path forward. Agree on these up front:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Evaluation:&lt;/strong&gt; a labeled test set and a pass bar, so "it seems good" becomes a measurement&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Observability:&lt;/strong&gt; traces, quality metrics, and alerts once real users are involved&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rollback:&lt;/strong&gt; a feature flag or kill switch that works in minutes, not days&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Portability:&lt;/strong&gt; how hard it would be to swap the model or vendor later&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stop criteria:&lt;/strong&gt; the result that tells you to cancel, which is as important as the one that tells you to scale&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Good answer:&lt;/strong&gt; defined evaluation, a rollback path, and written exit criteria.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Red flag:&lt;/strong&gt; "we'll productionize it after the demo."&lt;/p&gt;

&lt;h2&gt;
  
  
  Put it on one page
&lt;/h2&gt;

&lt;p&gt;Before kickoff, turn the answers into a short brief that everyone signs off on. Something as light as this works:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight yaml"&gt;&lt;code&gt;&lt;span class="na"&gt;project&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;support-ticket-triage&lt;/span&gt;
&lt;span class="na"&gt;problem&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;Tier-1 agents spend too long routing tickets&lt;/span&gt;
&lt;span class="na"&gt;success_metric&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;baseline&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;median time to first routing today&amp;gt;&lt;/span&gt;
  &lt;span class="na"&gt;target&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;number the team commits to&amp;gt;&lt;/span&gt;
  &lt;span class="na"&gt;measured_by&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;dashboard or report&amp;gt;&lt;/span&gt;
&lt;span class="na"&gt;data&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;sources&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;ticketing system&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;knowledge base&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
  &lt;span class="na"&gt;owner&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;named person&amp;gt;&lt;/span&gt;
  &lt;span class="na"&gt;contains_pii&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="kc"&gt;true&lt;/span&gt;
&lt;span class="na"&gt;integration&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;systems&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;ticketing API&lt;/span&gt;&lt;span class="pi"&gt;,&lt;/span&gt; &lt;span class="nv"&gt;SSO&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
  &lt;span class="na"&gt;auth&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;service account, least privilege&lt;/span&gt;
&lt;span class="na"&gt;ownership&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;product_owner&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;name&amp;gt;&lt;/span&gt;
  &lt;span class="na"&gt;on_call&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;team&amp;gt;&lt;/span&gt;
  &lt;span class="na"&gt;human_review&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;low-confidence routes&lt;/span&gt;
&lt;span class="na"&gt;governance&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;data_residency&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;region&amp;gt;&lt;/span&gt;
  &lt;span class="na"&gt;audit_log&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;required&lt;/span&gt;
  &lt;span class="na"&gt;approved_models&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="pi"&gt;[&lt;/span&gt;&lt;span class="nv"&gt;&amp;lt;list&amp;gt;&lt;/span&gt;&lt;span class="pi"&gt;]&lt;/span&gt;
&lt;span class="na"&gt;cost&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;per_request_budget&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;amount&amp;gt;&lt;/span&gt;
  &lt;span class="na"&gt;monthly_ceiling&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;amount&amp;gt;&lt;/span&gt;
&lt;span class="na"&gt;pilot_to_prod&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt;
  &lt;span class="na"&gt;eval_set&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;size and source&amp;gt;&lt;/span&gt;
  &lt;span class="na"&gt;rollback&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;feature flag&lt;/span&gt;
  &lt;span class="na"&gt;stop_criteria&lt;/span&gt;&lt;span class="pi"&gt;:&lt;/span&gt; &lt;span class="s"&gt;&amp;lt;what makes us cancel&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The blanks are the point. Every &lt;code&gt;&amp;lt;placeholder&amp;gt;&lt;/code&gt; you can't fill in is a risk you've found for free.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to use this list
&lt;/h2&gt;

&lt;p&gt;Run it as a one-hour workshop with engineering, security, and the business owner in the same room. If you can't answer most of the seven, that isn't a reason to abandon the project. It's a sign the next step is discovery, not development.&lt;/p&gt;

&lt;p&gt;The teams that scale AI successfully tend to be the ones that did the boring questions first.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Which of these has caught your team off guard? Share it in the comments.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>architecture</category>
      <category>enterprise</category>
      <category>devops</category>
    </item>
    <item>
      <title>The Shift From Manual Patching to AI-Driven Vulnerability Resolution</title>
      <dc:creator>Sam Amderson</dc:creator>
      <pubDate>Thu, 29 Oct 2026 11:21:46 +0000</pubDate>
      <link>https://dev.to/samamderson/the-shift-from-manual-patching-to-ai-driven-vulnerability-resolution-7lo</link>
      <guid>https://dev.to/samamderson/the-shift-from-manual-patching-to-ai-driven-vulnerability-resolution-7lo</guid>
      <description>&lt;p&gt;Your scanner found 340 vulnerabilities this morning. Your team fixed 6 last sprint.&lt;/p&gt;

&lt;p&gt;That gap is the real security problem in most engineering orgs. &lt;strong&gt;Finding vulnerabilities stopped being the hard part years ago. Fixing them is where teams fall behind.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Manual patching was built for a world with fewer dependencies, slower release cycles, and smaller attack surfaces. That world is gone. This post looks at why manual patching breaks down, what AI-driven vulnerability resolution actually does, and how to adopt it without handing your codebase to a black box.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Manual Patching Breaks Down
&lt;/h2&gt;

&lt;p&gt;Manual patching follows a familiar loop: a scanner raises an alert, someone creates a ticket, the ticket waits in the backlog, and eventually an engineer upgrades the package, fixes whatever breaks, and runs the tests.&lt;/p&gt;

&lt;p&gt;Every step in that loop depends on a person, and the volume keeps growing.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Dependency trees are deep.&lt;/strong&gt; A typical app pulls in hundreds of transitive packages. Most vulnerabilities live in code you never chose directly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Upgrades break things.&lt;/strong&gt; A security fix may only exist in a newer major version, which can come with API changes and refactoring work.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Testing is the bottleneck.&lt;/strong&gt; Every upgrade needs verification, and manual QA cycles don't scale with alert volume.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Context switching is expensive.&lt;/strong&gt; Engineers pulled off roadmap work to patch lose hours getting back into flow.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Alert fatigue sets in.&lt;/strong&gt; When the backlog never shrinks, teams start ignoring it, which is exactly when a critical issue slips through.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The result is a backlog that grows faster than it shrinks, and a remediation process that only speeds up during emergencies.&lt;/p&gt;

&lt;h2&gt;
  
  
  What AI-Driven Vulnerability Resolution Actually Means
&lt;/h2&gt;

&lt;p&gt;Traditional scanners &lt;strong&gt;report&lt;/strong&gt;. AI-driven tools &lt;strong&gt;resolve&lt;/strong&gt;. The difference is how far the automation goes after detection.&lt;/p&gt;

&lt;p&gt;A typical AI-driven resolution flow looks like this:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Detect&lt;/strong&gt; vulnerabilities across application code, direct packages, and transitive dependencies.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prioritize&lt;/strong&gt; by severity, exploitability, and whether the vulnerable code path is actually reachable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Upgrade&lt;/strong&gt; only the affected packages to safe versions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resolve&lt;/strong&gt; the code changes the upgrade requires, such as updated function calls after an API change.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Verify&lt;/strong&gt; the fix by running unit, integration, and regression tests.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Propose&lt;/strong&gt; the change as a pull request with evidence attached: what was found, what changed, and what passed.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A human then reviews and approves the PR. The tedious parts are automated, while the judgment stays with people.&lt;/p&gt;

&lt;h2&gt;
  
  
  What This Looks Like in Practice
&lt;/h2&gt;

&lt;p&gt;Here's a simple dependency upgrade. Older lodash versions have known prototype pollution vulnerabilities that were fixed in later 4.17.x releases:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight diff"&gt;&lt;code&gt;  "dependencies": {
    "express": "^4.21.2",
&lt;span class="gd"&gt;-   "lodash": "4.17.15"
&lt;/span&gt;&lt;span class="gi"&gt;+   "lodash": "4.17.21"
&lt;/span&gt;  }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That one's easy. The harder cases are vulnerabilities in your own code, where the fix needs a code change rather than a version bump. A classic example is SQL built from user input:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight diff"&gt;&lt;code&gt;  def find_orders(customer_id):
&lt;span class="gd"&gt;-     sql = f"SELECT * FROM orders WHERE cid={customer_id}"
-     return db.execute(sql)
&lt;/span&gt;&lt;span class="gi"&gt;+     sql = "SELECT * FROM orders WHERE cid = %s"
+     return db.execute(sql, (customer_id,))
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;An AI-driven tool can generate both kinds of change, run your test suite against them, and open a PR with the results. &lt;strong&gt;The engineer's job shifts from writing the fix to reviewing it.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Where Humans Still Matter
&lt;/h2&gt;

&lt;p&gt;AI-driven resolution doesn't mean removing people from the loop. It means putting them in the right place in it.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Approving changes:&lt;/strong&gt; Every fix should go through code review, especially in critical services.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Major version upgrades:&lt;/strong&gt; Breaking changes in frameworks often need architectural judgment, not just mechanical edits.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Business logic:&lt;/strong&gt; If a fix changes behavior, someone who understands the domain has to confirm it's correct.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Policy decisions:&lt;/strong&gt; Humans decide which repos allow auto-merge, which require approval, and which issues can be accepted as risk.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Automation handles the volume. People handle the judgment.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Adopt It Without Losing Control
&lt;/h2&gt;

&lt;p&gt;You don't need to switch your whole organization overnight. A gradual rollout builds trust:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Start with one repository&lt;/strong&gt; that has good test coverage. AI-generated fixes are only as trustworthy as the tests that verify them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Begin with patch and minor upgrades.&lt;/strong&gt; Save major version upgrades for later, once you trust the process.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Require PRs, not direct commits.&lt;/strong&gt; Every change should be reviewable and reversible.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Measure mean time to remediate (MTTR).&lt;/strong&gt; Track how long vulnerabilities stay open before and after adoption.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Expand gradually.&lt;/strong&gt; Add repos and broaden the scope of upgrades as results hold up.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Common Pitfalls to Avoid
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Trusting fixes without tests.&lt;/strong&gt; If your coverage is thin, invest there first.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auto-merging major upgrades.&lt;/strong&gt; Keep a human gate on anything with breaking changes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ignoring transitive dependencies.&lt;/strong&gt; That's where much of the risk actually lives.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Skipping the audit trail.&lt;/strong&gt; Record what was found, what changed, and who approved it. You'll need it for compliance and incident reviews.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Bottom Line
&lt;/h2&gt;

&lt;p&gt;Manual patching isn't wrong. It just doesn't scale to the size of modern dependency trees. &lt;strong&gt;The shift to AI-driven vulnerability resolution is a shift from chasing alerts to reviewing tested fixes.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Teams that make it well keep humans in control, start small, and let their test suites do the heavy lifting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Over to you:&lt;/strong&gt; How does your team handle the vulnerability backlog today? Fully manual, Dependabot-style automation, or something more advanced? Share in the comments.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;If you found this useful, follow for more practical posts on security, DevOps, and AI in software delivery.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;This article was written by Xccelera AI team with AI-assisted editing. All content has been reviewed for accuracy.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>security</category>
      <category>devops</category>
      <category>ai</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Human-in-the-Loop Approval Matrix for AI Agent Actions</title>
      <dc:creator>Sam Amderson</dc:creator>
      <pubDate>Mon, 26 Oct 2026 09:45:20 +0000</pubDate>
      <link>https://dev.to/samamderson/human-in-the-loop-approval-matrix-for-ai-agent-actions-4cd1</link>
      <guid>https://dev.to/samamderson/human-in-the-loop-approval-matrix-for-ai-agent-actions-4cd1</guid>
      <description>&lt;p&gt;Your AI agent just deleted a production table. The first question in the postmortem won't be about the model. It will be: &lt;strong&gt;who decided this agent was allowed to do that alone?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most production failures with AI agents trace back to that one unanswered question. A &lt;strong&gt;human-in-the-loop approval matrix&lt;/strong&gt; answers it in advance by tying every agent action to three things:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A risk tier&lt;/li&gt;
&lt;li&gt;A named approver&lt;/li&gt;
&lt;li&gt;An escalation path&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The result is that low-risk work stays fast, and costly or irreversible actions reach accountable people. Every decision also leaves a record that security, audit, and engineering leaders can inspect at any time, so no one has to rebuild the story after the fact.&lt;/p&gt;

&lt;p&gt;Here's how to build one, step by step.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Classify Every AI Agent Action by Risk and Reversibility
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;A human-in-the-loop approval matrix is only as good as the inventory behind it.&lt;/strong&gt; Before anyone is named as an approver, list what each agent can actually do: read a record, draft a message, change a configuration, release a payment, delete data.&lt;/p&gt;

&lt;p&gt;Teams that skip this step guard the loud actions and miss the quiet ones. That's why teams building governed enterprise AI programs usually start here. Every later rule depends on having a complete and honest list of actions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Agent Permission Tiers: From Read-Only to Irreversible
&lt;/h3&gt;

&lt;p&gt;Permission tiers give the matrix its rows. Each tier groups actions that would have the same consequence if the agent got them wrong, so &lt;strong&gt;approvers review by impact, not by tool name.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Four tiers cover most enterprise deployments. The default control for each is a starting point that risk owners should tune.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Tier 0, read-only:&lt;/strong&gt; Querying a knowledge base. Default control: runs autonomously and is logged.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tier 1, reversible write:&lt;/strong&gt; Drafting a ticket or updating a staging record. Default control: runs autonomously, with sampled review.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tier 2, business-impacting:&lt;/strong&gt; Changing customer-facing settings. Default control: a single approval before execution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tier 3, irreversible or regulated:&lt;/strong&gt; Deleting production data, releasing a payment, or granting access. Default control: dual approval, and never auto-approved on timeout.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Scoring Blast Radius, Data Sensitivity, and Financial Exposure
&lt;/h3&gt;

&lt;p&gt;Tier placement should come from a repeatable score, not from a debate in every meeting. Rate each action on three factors:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Blast radius:&lt;/strong&gt; How many users, systems, or records one mistake can touch.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data sensitivity:&lt;/strong&gt; Whether the action reads or writes personal, financial, or regulated data.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Financial exposure:&lt;/strong&gt; The cost of the worst realistic outcome, including cleanup and customer impact.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Then place the action in the highest tier that any single factor reaches. &lt;strong&gt;Scoring on the maximum rather than the average stops a cheap but dangerous action from hiding in a low tier.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Set Autonomy Thresholds for Which Agent Actions Run Alone
&lt;/h2&gt;

&lt;p&gt;Autonomy thresholds turn tiers into rules an agent can follow at runtime. A threshold states the exact condition under which an action can proceed without a person.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If a threshold isn't machine-checkable, it will quietly turn into a suggestion.&lt;/strong&gt; So encode these checks into the agent's execution path rather than leaving them in a policy document.&lt;/p&gt;

&lt;p&gt;A workable set of thresholds usually includes four checks:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The action belongs to a tier that allows autonomous execution.&lt;/li&gt;
&lt;li&gt;The agent's own confidence or validation score clears the agreed floor.&lt;/li&gt;
&lt;li&gt;The target system, account, or dataset is on the approved list.&lt;/li&gt;
&lt;li&gt;Spend, volume, or record counts stay under a per-run limit.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;If any one check fails, the action pauses for approval.&lt;/strong&gt; Each threshold also needs an owner who can raise or lower it, along with a change log that records why.&lt;/p&gt;

&lt;p&gt;Start conservative. Most teams can widen autonomy once a review period shows clean results. Narrowing it after an incident costs trust, and that trust takes much longer to rebuild.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Assign Approval Authority in a Risk-Based Approval Workflow
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Approval authority fails when it sits with whoever happens to be online.&lt;/strong&gt; A risk-based approval workflow assigns authority according to the kind of risk an action carries:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Engineering&lt;/strong&gt; owns technical correctness.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Security&lt;/strong&gt; owns access and exposure.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Business owners&lt;/strong&gt; own financial and customer impact.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each row in the matrix names a role, not a person, so coverage holds up through vacations and reorganizations.&lt;/p&gt;

&lt;h3&gt;
  
  
  Single Approver, Dual Approval, and Committee Review
&lt;/h3&gt;

&lt;p&gt;The review model should scale with the consequence. Heavier models slow delivery, so save them for actions where the downside justifies the delay.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Single approver:&lt;/strong&gt; For Tier 2 changes with a clear rollback. The approver is typically the domain owner.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dual approval:&lt;/strong&gt; For Tier 3 actions that touch money or access. The approvers are typically the domain owner plus security.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Committee review:&lt;/strong&gt; For new action types or policy exceptions. The approver is typically a cross-functional risk group.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Time Limits and Fallback Approvers
&lt;/h3&gt;

&lt;p&gt;Every approval request needs a clock. Set a response window for each tier, name a fallback approver, and decide in advance what happens when the window expires.&lt;/p&gt;

&lt;p&gt;For Tier 3 actions, the answer should be that the action stays blocked and the request escalates. &lt;strong&gt;Silence should never count as consent.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Without this rule, approval queues become bottlenecks, and bottlenecks tempt teams to loosen controls under delivery pressure.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Define Escalation Rules for AI Agents
&lt;/h2&gt;

&lt;p&gt;Escalation rules cover the moments a matrix can't predict. An agent will eventually meet a situation that no row describes, and &lt;strong&gt;the safe default is to stop and ask rather than guess.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Good escalation rules are specific about three things: the triggers, where the request goes, and what the agent does while it waits.&lt;/p&gt;

&lt;p&gt;One rule matters above the rest:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;An action missing from the matrix is a Tier 3 action until a human classifies it.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Common triggers that should route a request to a person include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Validation or confidence scores fall below the agreed floor.&lt;/li&gt;
&lt;li&gt;Two policies give conflicting instructions for the same action.&lt;/li&gt;
&lt;li&gt;The request targets a system or dataset outside the approved list.&lt;/li&gt;
&lt;li&gt;Repeated retries suggest the agent is looping rather than making progress.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every escalation should arrive with full context: the proposed action, the agent's reasoning, the inputs it used, and the tier that triggered the review. &lt;strong&gt;Approvers who have to reconstruct context from scratch either approve slowly or approve blindly.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 5: Build an Audit Trail and Review the Matrix Regularly
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;An approval matrix without records is a policy document, not a control.&lt;/strong&gt; An audit trail for agent decisions should capture:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The requested action and its tier&lt;/li&gt;
&lt;li&gt;The approver and their decision&lt;/li&gt;
&lt;li&gt;The timestamp&lt;/li&gt;
&lt;li&gt;The outcome after execution&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These fields let security teams answer an incident question in minutes. They also let auditors confirm that the matrix was actually followed, not just written down.&lt;/p&gt;

&lt;h3&gt;
  
  
  Keep the Matrix Alive
&lt;/h3&gt;

&lt;p&gt;The matrix needs a review cadence, and quarterly is a sensible start. Look at approval rates, override reasons, and near misses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;An action that gets approved unchanged every time is a candidate for a lower tier.&lt;/li&gt;
&lt;li&gt;An action that keeps generating overrides may need tighter thresholds.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Human oversight for AI agents works best as a living system that tracks real behavior.&lt;/strong&gt; Each review should end with concrete tier changes, not a summary slide.&lt;/p&gt;

&lt;h2&gt;
  
  
  Putting the Matrix Into Production
&lt;/h2&gt;

&lt;p&gt;Writing the matrix is the easy part. &lt;strong&gt;Running it across many agents, teams, and systems is where programs stall.&lt;/strong&gt; Approvers multiply, thresholds drift, and records scatter across tools.&lt;/p&gt;

&lt;p&gt;A few practices keep it working at scale:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Enforce the matrix in code, not in a wiki.&lt;/strong&gt; The checks should run in the agent's execution path, so every action passes through them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Route approvals to one place.&lt;/strong&gt; Approvers shouldn't have to hunt across Slack, email, and tickets to find pending requests.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Store decisions with the action log.&lt;/strong&gt; Approvals that live next to the actions they cover make audits and incident reviews much faster.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Widen autonomy on evidence.&lt;/strong&gt; Move an action to a lower tier only after the review data supports it.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Bottom Line
&lt;/h2&gt;

&lt;p&gt;Whether you build your own tooling or evaluate a platform, ask one direct question:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Can every consequential agent action be traced to a tier, an approver, and a recorded decision?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If the answer is yes, autonomy can grow safely. If it's no, the risk is simply moving faster.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Over to you:&lt;/strong&gt; How does your team decide which agent actions need human approval today? Share your approach in the comments.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;If this was useful, follow for more practical guides on building and governing AI agents in production.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;This article was written by our team with AI-assisted editing. All content has been reviewed for accuracy.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>aiagents</category>
      <category>security</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
