<?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: Dwayo AI</title>
    <description>The latest articles on DEV Community by Dwayo AI (dwayoai).</description>
    <link>https://dev.to/dwayoai</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%2Forganization%2Fprofile_image%2F15422%2F72fd3f14-76c6-4b06-a0d1-bce8b0355821.png</url>
      <title>DEV Community: Dwayo AI</title>
      <link>https://dev.to/dwayoai</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/dwayoai"/>
    <language>en</language>
    <item>
      <title>Which of your LLM calls are really decisions? What we measured with a System One model</title>
      <dc:creator>Devji</dc:creator>
      <pubDate>Mon, 26 Oct 2026 08:46:28 +0000</pubDate>
      <link>https://dev.to/dwayoai/which-of-your-llm-calls-are-really-decisions-what-we-measured-with-a-system-one-model-5330</link>
      <guid>https://dev.to/dwayoai/which-of-your-llm-calls-are-really-decisions-what-we-measured-with-a-system-one-model-5330</guid>
      <description>&lt;p&gt;&lt;strong&gt;TL;DR:&lt;/strong&gt; On three public tasks, Jev (a System One decision model) had a median latency of 346 to 372 ms against 1,035 to 1,057 ms for Claude Haiku 5.5 with thinking off. That is about 2.8 to 3 times faster, at about 2.1 to 2.5 times lower list-price cost. It was 4.0 points ahead on 77-class Banking77 and within noise on the other two. We only tested one small chat model, so this says nothing about frontier models.&lt;/p&gt;

&lt;h2&gt;
  
  
  Are most production LLM calls really decisions?
&lt;/h2&gt;

&lt;p&gt;Often, yes. Between a user's message and the final reply, an agent routes tickets, classifies intent and rates sentiment. Each of these has a small set of valid answers known in advance, and each runs on almost every request.&lt;/p&gt;

&lt;p&gt;Teams usually send these calls to the same chat model that writes the reply. It works, but you pay for generation, wait for it, and then parse free text back into a label. We covered how that cost compounds in &lt;a href="https://dwayo.ai/blog/llm-inference-cost-optimization/" rel="noopener noreferrer"&gt;why LLM inference costs blow up at scale&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;A newer class of model is built only for this job. We wanted to know whether it holds up on real tasks, so we measured it instead of repeating its maker's numbers.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is a System One model?
&lt;/h2&gt;

&lt;p&gt;A System One model makes fast, structured decisions instead of writing text. You give it text or JSON and a typed question, and it returns a typed answer with a probability, not a paragraph. The name borrows from Kahneman's fast and slow thinking: a chat model reasoning through a problem is the slow side, and a System One model is the fast, intuitive side.&lt;/p&gt;

&lt;p&gt;There are three question types:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;yes/no&lt;/strong&gt;: how likely is this statement to be true&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;choice&lt;/strong&gt;: pick one option from a set you define&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;score&lt;/strong&gt;: place the input on an ordered scale&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Jev is the first model of this kind we came across. Three facts shape how you would use it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It is hosted only, with no downloadable weights.&lt;/li&gt;
&lt;li&gt;It accepts text only.&lt;/li&gt;
&lt;li&gt;It was in early access when we tested it. We ran version &lt;code&gt;jev-1.13.0&lt;/code&gt; in October 2026.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You will see the same claims repeated: answers in 70 to 500 ms, about $0.042 per million input tokens with free output, and a model that "cannot hallucinate". Most coverage repeats the maker's figures, and independent reproductions are scarce; &lt;a href="https://www.datacamp.com/blog/system-one-models-jev" rel="noopener noreferrer"&gt;DataCamp's overview&lt;/a&gt; says as much. The "cannot hallucinate" claim means the output is always a valid value from your list. It does not mean the value is right. So we measured how often it was right.&lt;/p&gt;

&lt;h2&gt;
  
  
  What should you ask before moving an LLM call?
&lt;/h2&gt;

&lt;p&gt;Not every LLM call is a decision. Run each call in your pipeline through these four checks:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Check&lt;/th&gt;
&lt;th&gt;What to ask&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Closed answers&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Can you list every valid answer in advance: a set of labels, a scale, or yes/no? If the answer needs free text or an explanation, keep the chat model.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Text input&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Is the input text or JSON? The model we tested does not take images, audio or video.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Latency matters&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Is a user or another service waiting on the answer, so that saving a second is felt?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Volume&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Does the call run on a large share of requests? A saving of a fraction of a cent only matters at volume.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Four yes answers make a call a strong candidate. Three are worth testing. Two or fewer, leave it on the chat model. A yes does not tell you the new model is accurate enough, which is what the next section is for.&lt;/p&gt;

&lt;p&gt;Whichever model you pick, keep it behind an interface so you can swap it later; we explain why in &lt;a href="https://dwayo.ai/blog/avoiding-ai-vendor-lock-in/" rel="noopener noreferrer"&gt;avoiding AI vendor lock-in&lt;/a&gt;. To run the check across your whole pipeline in one go, there is a &lt;a href="https://dwayo.ai/engineering-resources/decision-call-audit/" rel="noopener noreferrer"&gt;free decision-call audit&lt;/a&gt; that scores every call and exports a measurement plan.&lt;/p&gt;

&lt;h2&gt;
  
  
  How did Jev compare on cost, latency and accuracy?
&lt;/h2&gt;

&lt;p&gt;We ran Jev and Claude Haiku 5.5 on the same examples from public datasets: Banking77 (77 customer-support intents, 500 examples), a 10-class subset of it (400 examples) and a content-safety dataset for a safe-or-unsafe check (500 examples). Datasets: Banking77 (PolyAI, CC-BY-4.0) and the Aegis 2.0 content-safety dataset (NVIDIA, CC-BY-4.0).&lt;/p&gt;

&lt;p&gt;How we ran it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Haiku ran with thinking turned off and a 128-token cap. That is not its default setting; with thinking on, some calls used the whole budget before answering.&lt;/li&gt;
&lt;li&gt;Latency was measured from our client, network included, with four calls in flight.&lt;/li&gt;
&lt;li&gt;Cost is tokens used times each model's list price on 22 October 2026, not an invoice.&lt;/li&gt;
&lt;li&gt;We did not tune prompts for either model.&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Task&lt;/th&gt;
&lt;th&gt;Accuracy: Jev&lt;/th&gt;
&lt;th&gt;Accuracy: Haiku&lt;/th&gt;
&lt;th&gt;Median latency: Jev&lt;/th&gt;
&lt;th&gt;Median latency: Haiku&lt;/th&gt;
&lt;th&gt;Cost per 1,000: Jev&lt;/th&gt;
&lt;th&gt;Cost per 1,000: Haiku&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Banking77, 77 classes&lt;/td&gt;
&lt;td&gt;79.0%&lt;/td&gt;
&lt;td&gt;75.0%&lt;/td&gt;
&lt;td&gt;372 ms&lt;/td&gt;
&lt;td&gt;1,057 ms&lt;/td&gt;
&lt;td&gt;$0.0429&lt;/td&gt;
&lt;td&gt;$0.1073&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Banking77, 10 classes&lt;/td&gt;
&lt;td&gt;95.5%&lt;/td&gt;
&lt;td&gt;95.8%&lt;/td&gt;
&lt;td&gt;367 ms&lt;/td&gt;
&lt;td&gt;1,035 ms&lt;/td&gt;
&lt;td&gt;$0.0160&lt;/td&gt;
&lt;td&gt;$0.0351&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Content safety&lt;/td&gt;
&lt;td&gt;81.8%&lt;/td&gt;
&lt;td&gt;79.0%&lt;/td&gt;
&lt;td&gt;346 ms&lt;/td&gt;
&lt;td&gt;1,037 ms&lt;/td&gt;
&lt;td&gt;$0.0144&lt;/td&gt;
&lt;td&gt;$0.0304&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Speed and cost.&lt;/strong&gt; Jev's median latency was 346 to 372 ms against 1,035 to 1,057 ms for Haiku, about 2.8 to 3 times faster. At list prices it cost about 2.1 to 2.5 times less. Its slow tail was modest, with p95 between 463 and 677 ms, though on the safety task that went past the 500 ms top of the range its maker quotes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Accuracy.&lt;/strong&gt; On the 77-class task Jev was ahead by 4.0 points (95% interval +1.4 to +7.0, exact McNemar test p = 0.011). There were 38 examples only Jev got right and 18 only Haiku got right. The result still holds after a simple correction for testing three tasks. On the 10-class task the gap was within noise (-0.3 points, p = 1.0), and on the safety task it was too (+2.8 points, interval -0.0 to +5.8, p = 0.08). Each task was one run on one date, so treat the 77-class gap as promising, not settled. On a repeat of identical inputs Jev's accuracy moved slightly, so the last digit of any figure here is noise.&lt;/p&gt;

&lt;p&gt;The summary: on these three tasks a decision model was much faster and cheaper than a small chat model, and at least as accurate. That says nothing about frontier models, which we did not test.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Reproduce it.&lt;/strong&gt; The harness, the pinned model versions and every run record are open source in &lt;a href="https://github.com/dwayo-ai/system-one-decision-bench" rel="noopener noreferrer"&gt;system-one-decision-bench&lt;/a&gt; (Apache-2.0). Rerun it with your own API keys and check our numbers.&lt;/p&gt;

&lt;h2&gt;
  
  
  What else did the benchmark show?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Accuracy falls as the label set grows.&lt;/strong&gt; Jev scored 95.5% on 10 classes and 79.0% on 77. Haiku fell further, from 95.8% to 75.0%. The two tasks use different example sets and the 10 classes were hand-picked, so treat this as a rule of thumb, not a controlled test.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Some failures are about the labels, not the model.&lt;/strong&gt; The classes Jev got most wrong were the same ones Haiku got most wrong. Both models missed &lt;code&gt;order_physical_card&lt;/code&gt; in 9 or 10 of 10 examples, usually answering &lt;code&gt;get_physical_card&lt;/code&gt;, a label that means almost the same thing. Both also failed on 7 of 9 examples of &lt;code&gt;top_up_by_bank_transfer_charge&lt;/code&gt;, answering &lt;code&gt;transfer_fee_charged&lt;/code&gt;. When two labels overlap that much, no classifier can separate them. Fix the label set before you blame the model.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Probabilities are not certainty.&lt;/strong&gt; Of Jev's 500 answers on the 77-class task, 338 landed in the top confidence band (0.9 to 1.0). Average stated confidence there was 98.4%, and actual accuracy was 93.8%. Against Haiku, Jev's calibration was better on two tasks and worse on one, so we do not claim either model is better calibrated.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;It does not write or explain.&lt;/strong&gt; It returns a value and a probability. If you need a stated reason for a decision, for an audit for example, you need another way to get one.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Does a chat-model fallback help?
&lt;/h2&gt;

&lt;p&gt;Barely, in our test. A popular design is a cascade: let the fast model decide, and send the call to a bigger model only when its probability falls below a threshold. We tested it with Jev first and Haiku as the fallback, sweeping the threshold from 0.50 to 0.99.&lt;/p&gt;

&lt;p&gt;At the thresholds we would actually pick (the cheapest that kept accuracy within a point of the best), only 5.4%, 0.2% and 0% of calls were escalated on the three tasks. The one gain was on the 77-class task: +1.4 points over Jev alone (interval +0.4 to +2.6) at about 1.14 times Jev's cost. We picked that threshold on the same 500 examples we measured on, so the real gain is probably smaller.&lt;/p&gt;

&lt;p&gt;Raising the threshold made things worse. On the 77-class task accuracy fell from 80.4% at a threshold of 0.50 to 75.8% at 0.99, close to Haiku's 75.0%. The reason is simple: the fallback was no more accurate than Jev. A cascade only pays when the second model is stronger than the first, and we only tested a weaker one. So this result says nothing about a cascade with a stronger fallback.&lt;/p&gt;

&lt;h2&gt;
  
  
  What didn't the benchmark test?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontier chat models.&lt;/strong&gt; We compared against one small model only.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A fine-tuned classifier.&lt;/strong&gt; For a task like routing, a small classifier trained on your own labelled data is the obvious rival, and we did not test one. Open-source decision models also exist.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Other access routes.&lt;/strong&gt; We called the model directly over its HTTP API, not through a gateway.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prompt tuning, other languages and long inputs.&lt;/strong&gt; One prompt per task, short English text.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Anything over time.&lt;/strong&gt; One run per task, on one date, on one model version. A hosted model can change under you.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Should you test it on your own data first?
&lt;/h2&gt;

&lt;p&gt;Yes. List your LLM calls and run the four checks. Pick the highest-volume call that passes, then try it on a few hundred of your own labelled examples before you change anything. Measure accuracy, median and p95 latency, and cost per 1,000 decisions on your data, not ours.&lt;/p&gt;

&lt;p&gt;Keep the model behind an interface so you can swap it, pin the exact model version in config, and look first at your labels: if your own team would disagree about the right answer, no model will fix that. For the code, see the &lt;a href="https://dwayo.ai/blog/jev-integration-system-one-agent-pipeline/" rel="noopener noreferrer"&gt;integration guide&lt;/a&gt;. The &lt;a href="https://github.com/dwayo-ai/system-one-decision-bench" rel="noopener noreferrer"&gt;benchmark harness&lt;/a&gt; is a working example of the interface pattern.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Originally published at &lt;a href="https://dwayo.ai/blog/jev-system-one-decision-model-benchmark/" rel="noopener noreferrer"&gt;dwayo.ai&lt;/a&gt;. We're &lt;a href="https://dwayo.ai/" rel="noopener noreferrer"&gt;Dwayo AI&lt;/a&gt;, an AI engineering partner.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>benchmark</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>We Almost Deployed an AI Debugging Agent. Then We Found a Critical CVE.</title>
      <dc:creator>Devji</dc:creator>
      <pubDate>Tue, 20 Oct 2026 06:09:22 +0000</pubDate>
      <link>https://dev.to/dwayoai/we-almost-deployed-an-ai-debugging-agent-then-we-found-a-critical-cve-20h6</link>
      <guid>https://dev.to/dwayoai/we-almost-deployed-an-ai-debugging-agent-then-we-found-a-critical-cve-20h6</guid>
      <description>&lt;p&gt;When our client's team evaluated Sentry Seer, the appeal was clear: it could automatically triage production errors, propose fixes, and open pull requests. For a small engineering team, that promised meaningful time savings. We decided not to proceed with the rollout after a serious security vulnerability was disclosed just days before launch.&lt;/p&gt;

&lt;h2&gt;
  
  
  The vulnerability wasn't a misconfiguration
&lt;/h2&gt;

&lt;p&gt;On September 16, 2026, CERT/CC published &lt;a href="https://kb.cert.org/vuls/id/212479" rel="noopener noreferrer"&gt;VU#212479&lt;/a&gt;, describing &lt;a href="https://app.opencve.io/cve/CVE-2026-90999" rel="noopener noreferrer"&gt;CVE-2026-90999&lt;/a&gt;, a critical trust-boundary violation in Sentry Seer.&lt;/p&gt;

&lt;p&gt;Here's the part that matters: Sentry projects commonly expose a public DSN in client-side code so browsers can submit error telemetry. Public DSNs are normal in browser applications because they only accept event submissions, so we hadn't considered ours a significant risk.&lt;/p&gt;

&lt;p&gt;CVE-2026-90999 changed that assumption. An unauthenticated attacker can submit a fabricated Sentry event through the public DSN. If Seer is configured to automatically hand issues to a coding agent, that attacker-controlled telemetry flows through Seer's analysis, gets embedded into the agent's prompt as legitimate context, and eventually &lt;a href="https://agyn.io/blog/sentry-seer-autofix-vulnerability" rel="noopener noreferrer"&gt;causes the agent to download and execute attacker-controlled code&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;An attacker would not need access to the organization's Sentry account, repository, or infrastructure. Just the DSN already shipped in your frontend JavaScript.&lt;/p&gt;

&lt;h2&gt;
  
  
  The pattern behind the CVE
&lt;/h2&gt;

&lt;p&gt;This wasn't the first warning. In June 2026, Tenet Security disclosed "&lt;a href="https://www.infosecurity-magazine.com/news/agentjacking-attacks-hijack-ai/" rel="noopener noreferrer"&gt;agentjacking&lt;/a&gt;": an attacker sends a forged error event through a public Sentry DSN, and when a developer later asks their coding agent to look at open Sentry issues, the agent reads the event through Sentry's MCP server and follows the attacker's instructions. Sentry acknowledged the report but declined to fix the root cause, calling it "technically not defensible" at the platform level. CVE-2026-90999 is the same weakness on a different path. &lt;a href="https://labs.cloudsecurityalliance.org/research/csa-research-note-agentjacking-sentry-mcp-20260614-csa-style/" rel="noopener noreferrer"&gt;Agentjacking&lt;/a&gt; needed a developer to prompt the agent. Seer's automated handoff removes that step, so forged telemetry can reach a privileged coding agent with no human involved at all.&lt;/p&gt;

&lt;p&gt;It would be easy to file this under "vendor security incident" and move on. But this is structural, and applicable to any AI agent that consumes external telemetry and takes automated action.&lt;/p&gt;

&lt;p&gt;Most security reviews focus on the model and the endpoint. Once an AI system can take action, the path from incoming data to execution becomes another part of the system that needs a security review.&lt;/p&gt;

&lt;p&gt;In this case, that pipeline had four stages:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Telemetry ingestion&lt;/strong&gt; — a public DSN accepted events from anyone&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI processing&lt;/strong&gt; — Seer generated a root-cause analysis&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Agent handoff&lt;/strong&gt; — the analysis was embedded into a prompt sent to a coding agent&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Execution&lt;/strong&gt; — the agent ran code in a privileged environment with source repo access&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each stage assumed the previous one had validated its input. None enforced that assumption end-to-end. The problem was not isolated to one component. It came from the way untrusted data moved through the entire workflow.&lt;/p&gt;

&lt;p&gt;The &lt;a href="https://kb.cert.org/vuls/id/212479" rel="noopener noreferrer"&gt;CERT/CC advisory&lt;/a&gt; describes it plainly: fabricated events traverse multiple trust boundaries, transforming from untrusted telemetry into instructions the privileged agent executes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why this matters for every enterprise evaluating AI agents
&lt;/h2&gt;

&lt;p&gt;Seer isn't unusual in its architecture. Telemetry in, AI reasoning, automated action out: this is becoming the default shape of AI tooling. Error triage, log analysis, incident response, code review. All of it is moving toward agentic pipelines that don't just suggest but execute.&lt;/p&gt;

&lt;p&gt;That changes the security question. We realized that evaluating the model alone was insufficient. We also needed to understand which inputs could reach the agent and what permissions the agent had.&lt;/p&gt;

&lt;p&gt;Most teams evaluate model accuracy and integration surface. But they do not evaluate the full chain of custody for telemetry.&lt;/p&gt;

&lt;h2&gt;
  
  
  A framework we now use
&lt;/h2&gt;

&lt;p&gt;We built a short checklist for any AI agent that takes automated action:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Check&lt;/th&gt;
&lt;th&gt;What to ask&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Inputs&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Are all inputs authenticated? Can an external actor trigger the pipeline without credentials? Public endpoints such as DSNs, webhooks, and forms should be treated as untrusted entry points.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Privileges&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Does the agent execute code? In what environment? With what scope? If the answer is "our infrastructure, with production access," the bar for input validation is much higher.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Handoffs&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Every stage between input and execution is a trust boundary. Are those boundaries enforced, or assumed?&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Triggerability&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;If an unauthenticated user can trigger the workflow, every stage of that workflow needs to be included in the threat model.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Blast radius&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;If malicious input reaches the agent, what can it do? CERT/CC notes that successful exploitation gives access to connected source repositories, and allows actions permitted by the coding agent's credentials.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The questions are easier to answer before launch than after. Adversarial testing of what an agent does with hostile input is part of our &lt;a href="https://dwayo.ai/services/ai-agent-testing-evaluation/" rel="noopener noreferrer"&gt;AI agent testing and evaluation&lt;/a&gt; work, and the output-schema, whitelist and human-approval pattern is the one we describe in our &lt;a href="https://dwayo.ai/case-studies/agent-guardrails/" rel="noopener noreferrer"&gt;agent guardrails case study&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What to take away
&lt;/h2&gt;

&lt;p&gt;Agents that triage, diagnose, and fix production issues are too valuable to dismiss because of one CVE.&lt;/p&gt;

&lt;p&gt;But this changes how we evaluate them. Our reviews should cover not only whether an agent works, but also how it handles untrusted input before taking action and which team is responsible for those controls.&lt;/p&gt;

&lt;p&gt;As of this writing, no vendor patch is available. The mitigations are operational: disable autonomous handoff, sandbox the agent, restrict package installation, treat telemetry as untrusted input.&lt;/p&gt;

&lt;p&gt;For enterprises deploying agentic AI in engineering workflows, we now consider these controls a basic requirement for deploying autonomous agents. These tools can still be valuable, but they introduce risks that need to be addressed before deployment.&lt;/p&gt;

&lt;p&gt;Originally published on the &lt;a href="https://dwayo.ai/blog/sentry-seer-cve-ai-agent-security/" rel="noopener noreferrer"&gt;Dwayo blog&lt;/a&gt;. Evaluating an AI agent for your team? &lt;a href="https://meetings-na2.hubspot.com/devji/ai-discovery" rel="noopener noreferrer"&gt;Book a 30-minute review.&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>security</category>
      <category>agentjacking</category>
    </item>
  </channel>
</rss>
