PageSourceSearch

https://www.crittora.com/component---src-templates-article-templat…-boundary-shift-mdx-cd40071dc7f31d20421e.js

js crittora.com collected 2026-10-05 20:02:33 UTC 30,618 bytes, 3 lines download raw bytes

1/*! For license information please see component---src-templates-article-template-tsx-content-file-path-src-content-articles-en-agentic-engineering-is-not-a-discipline-shift-its-a-security-boundary-shift-mdx-cd40071dc7f31d20421e.js.LICENSE.txt */
2"use strict";(self.webpackChunkcrittora_dub=self.webpackChunkcrittora_dub||[]).push([[5138],{12206:function(e,t,n){n.r(t),n.d(t,{default:function(){return x}});var l=n(28453),i=n(96540);function a(e){const t=Object.assign({h1:"h1",p:"p",h2:"h2",ul:"ul",li:"li",hr:"hr",h3:"h3",strong:"strong"},(0,l.RP)(),e.components);return i.createElement(i.Fragment,null,i.createElement(t.h1,null,"Agentic Engineering Is Not a Discipline Shift — It’s a Security Boundary Shift"),"\n",i.createElement(t.p,null,"Agentic engineering is not best understood as a maturity upgrade from fast, messy AI-assisted coding to a more disciplined software practice. It is better understood as a security boundary shift: AI agents now need explicit, verifiable, time-bound authority before they can execute consequential actions."),"\n",i.createElement(t.p,null,"In practical terms, the core problem is not that teams need better specs, cleaner prompts, or more review cycles. The core problem is that many agentic systems still run with ambient authority, where tools, credentials, and prior context silently become permission."),"\n",i.createElement(t.p,null,"That framing matters because it changes the design target. If the risk lives at the execution layer, then the fix must also live at the execution layer."),"\n",i.createElement(t.h2,null,"What does “security boundary shift” mean in agentic engineering?"),"\n",i.createElement(t.p,null,"A security boundary shift means the system must stop treating execution as a natural consequence of model output. Instead, it must require explicit authorization for each class of action an AI agent can perform."),"\n",i.createElement(t.p,null,"That implies:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"authority is issued, not inferred"),"\n",i.createElement(t.li,null,"permissions are scoped, not broad"),"\n",i.createElement(t.li,null,"access is temporary, not persistent"),"\n",i.createElement(t.li,null,"delegation is constrained, not assumed"),"\n",i.createElement(t.li,null,"execution is verified before it runs"),"\n"),"\n",i.createElement(t.p,null,"Without those properties, the system may look disciplined while still remaining unsafe by construction."),"\n",i.createElement(t.h2,null,"Why isn’t this just better software engineering discipline?"),"\n",i.createElement(t.p,null,"Because process quality and execution security solve different problems."),"\n",i.createElement(t.p,null,"Specifications, task decomposition, code review, and tests help humans understand whether a change is correct. They do not prove that an agent was authorized to call an API, modify data, trigger a workflow, or act on behalf of a principal at the moment execution happened."),"\n",i.createElement(t.p,null,"There’s a narrative forming that the industry has “matured” from vibe coding into agentic engineering."),"\n",i.createElement(t.p,null,"That framing is too soft."),"\n",i.createElement(t.p,null,"What actually happened is simpler:"),"\n",i.createElement(t.p,null,"We discovered that letting agents execute without understanding wasn’t just messy. It was unsafe."),"\n",i.createElement(t.p,null,"And instead of fixing the execution model, most teams added process on top of it."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"Why did early AI-assisted development fail?"),"\n",i.createElement(t.p,null,"The early phase of AI-assisted development optimized for speed:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"prompt -> generate -> run"),"\n",i.createElement(t.li,null,"error -> reprompt -> retry"),"\n",i.createElement(t.li,null,"“it works” -> ship"),"\n"),"\n",i.createElement(t.p,null,"The failure mode wasn’t surprising."),"\n",i.createElement(t.p,null,"What’s important is why it failed."),"\n",i.createElement(t.p,null,"It wasn’t because engineers skipped reviews."),"\n",i.createElement(t.p,null,"It failed because execution authority was never defined."),"\n",i.createElement(t.p,null,"At no point did the system answer:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"Who is allowed to act?"),"\n",i.createElement(t.li,null,"What exactly are they allowed to do?"),"\n",i.createElement(t.li,null,"Under what constraints?"),"\n",i.createElement(t.li,null,"For how long?"),"\n",i.createElement(t.li,null,"With what proof?"),"\n"),"\n",i.createElement(t.p,null,"Instead, authority was inferred from:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"available tools"),"\n",i.createElement(t.li,null,"environment c
2onfiguration"),"\n",i.createElement(t.li,null,"prior context"),"\n",i.createElement(t.li,null,"or worse, nothing at all"),"\n"),"\n",i.createElement(t.p,null,"That is not an engineering issue."),"\n",i.createElement(t.p,null,"That is an execution-layer security failure."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"Why is oversight not enough for AI agent security?"),"\n",i.createElement(t.p,null,"The current model introduces discipline:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"write specs"),"\n",i.createElement(t.li,null,"break tasks down"),"\n",i.createElement(t.li,null,"review diffs"),"\n",i.createElement(t.li,null,"add tests"),"\n"),"\n",i.createElement(t.p,null,"This improves outcomes."),"\n",i.createElement(t.p,null,"But it does not change the underlying system."),"\n",i.createElement(t.p,null,"Because oversight is not enforcement."),"\n",i.createElement(t.p,null,"You can fully understand a system and still deploy one where:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"permissions are implicit"),"\n",i.createElement(t.li,null,"execution is not verified"),"\n",i.createElement(t.li,null,"authority persists indefinitely"),"\n",i.createElement(t.li,null,"actions can be replayed"),"\n"),"\n",i.createElement(t.p,null,"That system will fail. Just more slowly."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"What is ambient authority in agentic systems?"),"\n",i.createElement(t.p,null,"Most agentic systems today operate with what can be described as ambient authority:"),"\n",i.createElement(t.p,null,"If a tool is available, the agent can use it. If a credential exists, it can be applied. If context contains prior decisions, they can be reused."),"\n",i.createElement(t.p,null,"No explicit grant is required."),"\n",i.createElement(t.p,null,"In security terms, ambient authority means an AI agent inherits the power to act from its environment rather than receiving a narrowly scoped, verifiable capability for a specific action."),"\n",i.createElement(t.p,null,"This creates a system where:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"authority is inherited, not issued"),"\n",i.createElement(t.li,null,"permissions are persistent, not scoped"),"\n",i.createElement(t.li,null,"execution is assumed valid, not verified"),"\n"),"\n",i.createElement(t.p,null,"This is structurally identical to the original failure mode."),"\n",i.createElement(t.p,null,"The only difference is that humans are now watching it happen."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"What security risks still exist in agentic systems?"),"\n",i.createElement(t.p,null,"The same core risks still exist in modern agentic systems. They are often better hidden by process, orchestration layers, and human review, but the execution model remains weak if authority is not explicit and verifiable."),"\n",i.createElement(t.h2,null,"Failure Modes That Still Exist, Just Better Hidden"),"\n",i.createElement(t.h3,null,"1. Unauthorized Execution Paths"),"\n",i.createElement(t.p,null,i.createElement(t.strong,null,"Severity:")," Critical"),"\n",i.createElement(t.p,null,"Agents can still:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"call APIs"),"\n",i.createElement(t.li,null,"modify data"),"\n",i.createElement(t.li,null,"trigger workflows"),"\n"),"\n",i.createElement(t.p,null,"without a cryptographic proof that the action is authorized."),"\n",i.createElement(t.p,null,"Authentication is present."),"\n",i.createElement(t.p,null,"Authorization is assumed."),"\n",i.createElement(t.p,null,"Verification is missing."),"\n",i.createElement(t.p,null,"That is a direct execution compromise vector."),"\n",i.createElement(t.h3,null,"2. Authority Drift Across Tasks"),"\n",i.createElement(t.p,null,i.createElement(t.strong,null,"Severity:")," High"),"\n",i.createElement(t.p,null,"Agents operate across sessions, tools, and contexts."),"\n",i.createElement(t.p,null,"Without explicit scoping:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"permissions bleed between tasks"),"\n",i.createElement(t.li,null,"prior authority influences future execution"),"\n",i.createElement(t.li,null,"constraints degrade over time"),"\n"),"\n",i.createElement(t.p,null,"This is privilege creep, but in a dynamic system where no one can fully trace it."),"\n",i.createElement(t.h3,null,"3. Replay and Reuse of Intent"),"\n",i.createElement(t.p,null,i.createElement(t.strong,null,"Severity:")," High"),"\n",i.createElement(t.p,null,"Instru
2ctions, prompts, and actions are:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"reusable"),"\n",i.createElement(t.li,null,"repeatable"),"\n",i.createElement(t.li,null,"not bound to time or context"),"\n"),"\n",i.createElement(t.p,null,"This means:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"a valid action can be executed again later"),"\n",i.createElement(t.li,null,"or in a different context"),"\n",i.createElement(t.li,null,"or by a different agent"),"\n"),"\n",i.createElement(t.p,null,"There is no guarantee that authority is consumed once."),"\n",i.createElement(t.h3,null,"4. Confused Deputy at Scale"),"\n",i.createElement(t.p,null,i.createElement(t.strong,null,"Severity:")," Critical"),"\n",i.createElement(t.p,null,"Agents routinely act on behalf of:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"users"),"\n",i.createElement(t.li,null,"services"),"\n",i.createElement(t.li,null,"other agents"),"\n"),"\n",i.createElement(t.p,null,"But without explicit delegation:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"identity is treated as authority"),"\n",i.createElement(t.li,null,"context becomes a proxy for permission"),"\n"),"\n",i.createElement(t.p,null,"This allows systems to perform actions that were never explicitly approved by the original requester."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"What is missing from most agentic engineering stacks?"),"\n",i.createElement(t.p,null,"The shift that actually matters is not:"),"\n",i.createElement(t.p,null,"human writes less code"),"\n",i.createElement(t.p,null,"It is:"),"\n",i.createElement(t.p,null,"execution must be gated by explicit, verifiable authority"),"\n",i.createElement(t.p,null,"That means:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"authority is issued, not inferred"),"\n",i.createElement(t.li,null,"permissions are scoped, not broad"),"\n",i.createElement(t.li,null,"access is temporary, not persistent"),"\n",i.createElement(t.li,null,"execution is validated, not assumed"),"\n"),"\n",i.createElement(t.p,null,"Without this, nothing else holds."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"What does verifiable authority look like in practice?"),"\n",i.createElement(t.p,null,"Verifiable authority means execution is gated by an artifact, policy, or capability that can be validated before the action occurs. In stronger designs, that authority is cryptographically signed, scoped to a specific audience and action class, limited by time, and protected against replay."),"\n",i.createElement(t.p,null,"This is where execution-time authorization, capability-based security, delegation controls, and replay protection stop being optional architecture details and become core runtime requirements."),"\n",i.createElement(t.h2,null,"What changes when you enforce authority correctly?"),"\n",i.createElement(t.p,null,"When authority is enforced properly, the system behaves differently:"),"\n",i.createElement(t.h3,null,"No Permission -> No Tool Access"),"\n",i.createElement(t.p,null,"Agents cannot attempt disallowed actions."),"\n",i.createElement(t.p,null,"They are structurally incapable of performing them."),"\n",i.createElement(t.h3,null,"Expired Authority -> Execution Stops"),"\n",i.createElement(t.p,null,"No long-lived access."),"\n",i.createElement(t.p,null,"No silent persistence."),"\n",i.createElement(t.p,null,"No reliance on cleanup."),"\n",i.createElement(t.h3,null,"Reused Authority -> Denied"),"\n",i.createElement(t.p,null,"Replay is not possible without explicit allowance."),"\n",i.createElement(t.h3,null,"Unscoped Requests -> Rejected"),"\n",i.createElement(t.p,null,"Ambiguity becomes a failure condition, not a default pass."),"\n",i.createElement(t.h3,null,"Verification Happens Before Execution"),"\n",i.createElement(t.p,null,"Not during. Not after."),"\n",i.createElement(t.p,null,"Before anything runs."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"Why will process alone fail?"),"\n",i.createElement(t.p,null,"Specs, reviews, and tests are necessary."),"\n",i.createElement(t.p,null,"But they operate at the human layer."),"\n",i.createElement(t.p,null,"Security failures happen at the execution layer."),"\n",i.createElement(t.p,null,"You cannot review your way out of:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"implicit permissions"),"\n",i.createElement(t.li,null,"unbounded authority"),"\n",i.createElement(t.li,null,"replayable actions"),"\n",i.createElement(t.li,null,"unverifiable execution"),"\n"),"\n",i.createElement(t.p,null,"Those must be prevented by system design."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"What is the developer’s new role in agentic systems?"),"\n",i.createElement(t.p,null,"The real shift isn’t:"),"\n",i.createElement(t.p,null,"developer -> architect"),"\n",i.createElement(t.p,null,"It’s:"),"\n",i.createElement(t.p,null,"developer -> authority designer"),"\n",i.createElement(t.p,null,"You are no longer just defining:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"what the system does"),"\n"),"\n",i.createElement(t.p,null,"You are defining:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"what the system is allowed to do"),"\n",i.createElement(t.li,null,"under what constraints"),"\n",i.createElement(t.li,null,"with what proof"),"\n",i.createElement(t.li,null,"and when that permission disappears"),"\n"),"\n",i.createElement(t.p,null,"If you are not doing that, the agent is operating outside a controlled boundary."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"Bottom line: what is agentic engineering really?"),"\n",i.createElement(t.p,null,"Agentic engineering is not mainly a discipline shift. It is a security boundary shift."),"\n",i.createElement(t.p,null,"The real requirement is not simply writing cleaner prompts or enforcing better human oversight. It is designing systems where AI agents can execute only when explicit authority has been issued, verified, scoped, time-bound, and protected against reuse."),"\n",i.createElement(t.p,null,"Until systems enforce execution-time authorization, cryptographic verification, capability scoping, delegation constraints, and replay protection, they are still operating with ambient authority."),"\n",i.createElement(t.p,null,"And ambient authority in agentic systems is not a minor implementation flaw. It is a structural vulnerability."),"\n",i.createElement(t.hr),"\n",i.createElement(t.h2,null,"The Bottom Line"),"\n",i.createElement(t.p,null,"The industry didn’t outgrow vibe coding."),"\n",i.createElement(t.p,null,"It recognized that:"),"\n",i.createElement(t.p,null,"execution without authority is unsafe"),"\n",i.createElement(t.p,null,"But most implementations stopped at adding discipline."),"\n",i.createElement(t.p,null,"They did not fix the root issue."),"\n",i.createElement(t.p,null,"Until systems enforce:"),"\n",i.createElement(t.ul,null,"\n",i.createElement(t.li,null,"explicit capability issuance"),"\n",i.createElement(t.li,null,"cryptographic verification"),"\n",i.createElement(t.li,null,"time-bound permissions"),"\n",i.createElement(t.li,null,"replay protection"),"\n",i.createElement(t.li,null,"scoped execution"),"\n"),"\n",i.createElement(t.p,null,"you are still operating with ambient authority."),"\n",i.createElement(t.p,null,"And ambient authority in agentic systems is not a minor risk."),"\n",i.createElement(t.p,null,"It is a structural vulnerability."))}
2var r=function(e){void 0===e&&(e={});const{wrapper:t}=Object.assign({},(0,l.RP)(),e.components);return t?i.createElement(t,e,i.createElement(a,e)):a(e)},o=n(60436),s=n(34477),c=n(66423),u=n(35124),m=n(17862),d=n(15548),p=n(48686),h=n(32307),y=n(43197),g=n(70831),f=n(24387),E=n(89386),b=n(17437);const v=e=>{var t,n,a,r,v,x,w,A,k,C,T,Y,I;let{data:S,children:W,pageContext:B}=e;const{mdx:z}=S,{frontmatter:$}=z,L=S.images.nodes.find(e=>e.relativePath===$.featuredImage),R=$.featuredImageFit||"cover",P=$.featuredImageAlt||$.title,_=$.featuredImageMaxWidth||void 0,q=(null==B?void 0:B.language)||"en",M=null==B?void 0:B.slug,F=(null==B?void 0:B.section)||"field-notes",N=$.schemaType||("press"===F?"NewsArticle":"Article"),H="press"===F?"Press release":"Field note",D=$.author.trim(),j=/^Crittora\b/i.test(D),U=M?`${"es"===q?"/es":""}/${F}/${M}`:void 0,O=U?`https://crittora.com${U}`:void 0,Q=null!=L&&L.publicURL?`https://crittora.com${L.publicURL}`:void 0,V=$.tags||[],X=new Date($.date).toLocaleDateString("en-US",{year:"numeric",month:"short",day:"numeric",timeZone:"UTC"}),J=(null===(t=$.meta)||void 0===t||null===(n=t.keywords)||void 0===n?void 0:n.join(", "))||V.join(", "),K=M?[{href:`https://crittora.com/${F}/${M}`,hrefLang:"en"},{href:`https://crittora.com/es/${F}/${M}`,hrefLang:"es"},{href:`https://crittora.com/${F}/${M}`,hrefLang:"x-default"}]:void 0,Z={"@context":"https://schema.org","@type":N,headline:$.title,description:$.description,...Q?{image:Q}:{},author:{"@type":"Person",name:$.author},publisher:{"@type":"Organization",name:"Crittora",url:"https://crittora.com",logo:{"@type":"ImageObject",url:"https://crittora.com/logo-crittora.webp"}},datePublished:$.date,dateModified:$.lastmod||$.date,inLanguage:q,isPartOf:{"@type":"WebSite","@id":"https://crittora.com/#website"},...U?{mainEntityOfPage:{"@type":"WebPage","@id":O}}:{}},G="es"===q?`/es/${F}`:`/${F}`,ee="press"===F?"Press":"Field Notes",te=j?{"@type":"Organization","@id":"https://crittora.com/#organization",name:D}:{"@type":"Person","@id":`https://crittora.com/#author-${D.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}`,name:D,affiliation:{"@id":"https://crittora.com/#organization"}},ne=j?void 0:{"@context":"https://schema.org","@type":"Person","@id":te["@id"],name:D,affiliation:{"@id":"https://crittora.com/#organization"}},le=O?{"@context":"https://schema.org","@type":"BreadcrumbList",itemListElement:[{"@type":"ListItem",position:1,name:"Home",item:"es"===q?"https://crittora.com/es/":"https://crittora.com/"},{"@type":"ListItem",position:2,name:ee,item:`https://crittora.com${G}`},{"@type":"ListItem",position:3,name:$.title,item:O}]}:void 0,ie=[{question:`What is this ${"press"===F?"press release":"article"} about?`,answer:$.description},{question:"Who published this and when?",answer:`${D} published this ${H.toLowerCase()} on ${X}.`},{question:"Is this available in multiple languages?",answer:"es"===q?`Yes. This page is the Spanish version. The English version is available at /${F}/${M}.`:`Yes. This page is the English version. A Spanish version is available at /es/${F}/${M}.`}],ae=O?{"@context":"https://schema.org","@type":"FAQPage",mainEntity:ie.map(e=>({"@type":"Question",name:e.question,acceptedAnswer:{"@type":"Answer",text:e.answer}}))}:void 0,re=O?{"@context":"https://schema.org","@type":N,"@id":`${O}#speakable`,url:O,speakable:{"@type":"SpeakableSpecification",cssSelector:["h1","#aeo-tldr",".aeo-summary"]}}:void 0,oe=($.schema?Array.isArray($.schema)?$.schema:[$.schema]:[]).filter(e=>{if(!e||"object"!=typeof e)return!1;const t=e["@type"];return!["Article","NewsArticle","BlogPosting","WebPage","BreadcrumbList","FAQPage"].includes(String(t||""))}),se={...Z,author:te,publisher:{"@id":"https://crittora.com/#organization"},...V.length>0?{keywords:V}:{},articleSection:$.category||ee,...V.length>0?{about:V.slice(0,6).map(e=>({"@type":"DefinedTerm",name:e}))}:{}},ce=[se].concat((0,o.A)(ne?[ne]:[]),(0,o.A)(oe),(0,o.A)(le?[le]:[]),(0,o.A)(ae?[ae]:[]),(0,o.A)(re?[re]:[])),ue=[$.description,`${H} by ${D}, published ${X}.`,V.length>0?`Topics covered: ${V.slice(0,4).join(", ")}.`:`Category: ${"press"===F?"Company announcement":"Research and analysis"}.`],me={pre:e=>{let{children:t}=e;return(0,b.Y)(i.Fragment,null,t)},code:e=>{let{className:t,children:n}=e;const l=String(n||"").replace(/\n$/,""),i=Boolean(t)||l.includes("\n");return null!=t&&t.includes("language-mermaid")?(0,b.Y)(E.A,{chart:l}):(0,b.Y)(s.A,{component:i?"pre":"code",sx:i?{my:3,p:2,overflowX:"auto",borderRadius:2,backgroundColor:"#0f1720",color:"#dbe4ee",fontSize:"0.9rem",lineHeight:1.6}:{px:.5,py:.25,borderRadius:1,backgroundColor:"action.hover",fontFamily:"monospace",fontSize:"0.95em"}},i?(0,b.Y)("code",null,n):n)}};return(0,b.Y)(i.Fragment,null,(0,b.Y)(f.A,{title:(null===(a=$.meta)||void 0===a?void 0:a.title)||$.title,de
2scription:(null===(r=$.meta)||void 0===r?void 0:r.description)||$.description,keywords:J,canonical:U,ogImage:Q,ogType:(null===(v=$.open_graph)||void 0===v?void 0:v.type)||"article",ogTitle:(null===(x=$.open_graph)||void 0===x?void 0:x.title)||void 0,ogDescription:(null===(w=$.open_graph)||void 0===w?void 0:w.description)||void 0,ogUrl:O||(null===(A=$.open_graph)||void 0===A?void 0:A.url)||void 0,ogSiteName:(null===(k=$.open_graph)||void 0===k?void 0:k.site_name)||void 0,twitterCard:(null===(C=$.twitter)||void 0===C?void 0:C.card)||void 0,twitterTitle:(null===(T=$.twitter)||void 0===T?void 0:T.title)||void 0,twitterDescription:(null===(Y=$.twitter)||void 0===Y?void 0:Y.description)||void 0,schema:ce,robots:(null===(I=$.meta)||void 0===I?void 0:I.robots)||void 0,languageCode:q,alternates:K}),(0,b.Y)(g.A,null,(0,b.Y)(s.A,{component:"main"},(0,b.Y)(c.A,{maxWidth:"lg",sx:{py:8}},(null==L?void 0:L.publicURL)&&(0,b.Y)(s.A,{component:"img",src:L.publicURL,alt:P,sx:{width:"100%",maxWidth:_||"none",height:"contain"===R?"auto":{xs:220,md:360},objectFit:R,display:"block",mx:_?"auto":0,mb:4,borderRadius:1}}),(0,b.Y)(s.A,{sx:{mb:4}},(0,b.Y)(u.A,{variant:"h1",component:"h1",sx:{mb:3,fontWeight:700,lineHeight:1.2,fontSize:{xs:"2rem",md:"2.5rem"}}},$.title),(0,b.Y)(s.A,{sx:{display:"flex",flexWrap:"wrap",gap:2,mb:3,alignItems:"center"}},(0,b.Y)(s.A,{sx:{display:"flex",alignItems:"center",gap:1,color:"text.secondary"}},(0,b.Y)(p.A,{size:16}),(0,b.Y)(u.A,{variant:"body2"},$.author)),(0,b.Y)(s.A,{sx:{display:"flex",alignItems:"center",gap:1,color:"text.secondary"}},(0,b.Y)(h.A,{size:16}),(0,b.Y)(u.A,{variant:"body2"},X))),V.length>0&&(0,b.Y)(s.A,{sx:{mb:4}},(0,b.Y)(s.A,{sx:{display:"flex",alignItems:"center",gap:1,mb:1}},(0,b.Y)(y.A,{size:16}),(0,b.Y)(u.A,{variant:"body2",color:"text.secondary"},"Tags:")),(0,b.Y)(s.A,{sx:{display:"flex",flexWrap:"wrap",gap:1}},V.map((e,t)=>(0,b.Y)(m.A,{key:t,label:e,size:"small",variant:"outlined",sx:{fontSize:"0.75rem"}}))))),(0,b.Y)(s.A,{component:"section",className:"aeo-summary",sx:{mb:4,p:3,border:e=>`1px solid ${e.palette.divider}`,borderRadius:2,bgcolor:"rgba(255,255,255,0.02)"}},(0,b.Y)(u.A,{variant:"overline",sx:{color:"primary.main",letterSpacing:1.5}},"AI / Answer Summary"),(0,b.Y)(u.A,{id:"aeo-tldr","data-aeo":"tldr",variant:"h5",component:"h2",sx:{mt:1,mb:1.5,fontWeight:700}},"TL;DR"),(0,b.Y)(u.A,{variant:"body1",sx:{color:"text.secondary",mb:2}},$.description),(0,b.Y)(u.A,{variant:"h6",component:"h3",sx:{mb:1,fontWeight:700}},"Key Takeaways"),(0,b.Y)(s.A,{component:"ul",sx:{m:0,pl:3,display:"grid",gap:1}},ue.map(e=>(0,b.Y)(u.A,{key:e,component:"li",variant:"body2"},e))),(0,b.Y)(u.A,{variant:"h6",component:"h3",sx:{mt:3,mb:1,fontWeight:700}},"Quick Answers"),(0,b.Y)(s.A,{sx:{display:"grid",gap:1.5}},ie.map(e=>(0,b.Y)(s.A,{key:e.question},(0,b.Y)(u.A,{variant:"subtitle2",sx:{fontWeight:700}},e.question),(0,b.Y)(u.A,{variant:"body2",sx:{color:"text.secondary"}},e.answer))))),(0,b.Y)(d.A,{sx:{mb:4}}),(0,b.Y)(s.A,{onClick:e=>{const t=e.target,n=null==t?void 0:t.closest('a[href^="#diagram-"]');if(!n)return;e.preventDefault();const l=n.closest("p"),i=null==l?void 0:l.previousElementSibling,a=null==i?void 0:i.querySelector('[role="button"][aria-label="Open diagram in fullscreen modal"]');null==a||a.click()},sx:{"& h1, & h2, & h3, & h4, & h5, & h6":{mt:4,mb:2,fontWeight:600},"& h1":{fontSize:"2rem"},"& h2":{fontSize:"1.75rem"},"& h3":{fontSize:"1.5rem"},"& h4":{fontSize:"1.25rem"},"& p":{mb:2,lineHeight:1.7,fontSize:"1.1rem"},"& ul, & ol":{mb:2,pl:3},"& li":{mb:1,lineHeight:1.6},"& strong":{fontWeight:600},"& em":{fontStyle:"italic"},"& blockquote":{borderLeft:"4px solid",borderColor:"primary.main",pl:2,ml:0,my:3,fontStyle:"italic",color:"text.secondary"},"& code":{bgcolor:"grey.900",px:1,py:.5,borderRadius:1,fontSize:"0.9em",fontFamily:"monospace"},"& pre":{bgcolor:"grey.900",p:2,borderRadius:1,overflow:"auto",mb:2},"& pre code":{bgcolor:"transparent",p:0}}},(0,b.Y)(l.xA,{components:me},W))))))};function x(e){return i.createElement(v,e,i.createElement(r,e))}},28453:function(e,t,n){n.d(t,{RP:function(){return a},xA:function(){return o}});var l=n(96540);const i=l.createContext({});function a(e){const t=l.useContext(i);return l.useMemo(()=>"function"==typeof e?e(t):{...t,...e},[t,e])}const r={};function o({components:e,children:t,disableParentContext:n}){let o;return o=n?"function"==typeof e?e({}):e||r:a(e),l.createElement(i.Provider,{value:o},t)}},32307:function(e,t,n){n.d(t,{A:function(){return l}});const l=(0,n(9407).A)("calendar",[["path",{d:"M8 2v4",key:"1cmpym"}],["path",{d:"M16 2v4",key:"4m81vk"}],["rect",{width:"18",height:"18",x:"3",y:"4",rx:"2",key:"1hopcy"}],["path",{d:"M3 10h18",key:"8toen8"}]])},43197:function(e,t,n){n.d(t,{A:function(){return l}});const l=(0,n(9407).A)("tag",[["path",{d:"M12.586 2.586A2 2 0 0 0 11.
2172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z",key:"vktsd0"}],["circle",{cx:"7.5",cy:"7.5",r:".5",fill:"currentColor",key:"kqv944"}]])},48686:function(e,t,n){n.d(t,{A:function(){return l}});const l=(0,n(9407).A)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]])},89386:function(e,t,n){var l=n(96540),i=n(63518),a=n(34477),r=n(26773),o=n(25418),s=n(32483),c=n(35124),u=n(17437);t.A=e=>{let{chart:t}=e;const m=l.useId().replace(/:/g,"-"),[d,p]=l.useState(null),[h,y]=l.useState(!1),[g,f]=l.useState(!1);return l.useEffect(()=>{let e=!0;return(async()=>{try{if(await(async()=>{if("undefined"!=typeof window)return window.__crittoraMermaidReady||(window.__crittoraMermaidReady=Promise.all([n.e(8657),n.e(7286)]).then(n.bind(n,57286)).then(e=>{const t=e.default;t.initialize({startOnLoad:!1,securityLevel:"strict",theme:"base",fontFamily:"Helvetica, Arial, sans-serif",flowchart:{curve:"linear",htmlLabels:!0},themeVariables:{background:"#0b1220",primaryColor:"#111827",primaryTextColor:"#f8fafc",primaryBorderColor:"#38bdf8",lineColor:"#94a3b8",secondaryColor:"#172033",secondaryTextColor:"#e2e8f0",secondaryBorderColor:"#60a5fa",tertiaryColor:"#1f2937",tertiaryTextColor:"#f8fafc",tertiaryBorderColor:"#22d3ee",mainBkg:"#111827",secondBkg:"#172033",tertiaryBkg:"#1f2937",nodeBorder:"#38bdf8",clusterBkg:"#0f172a",clusterBorder:"#334155",defaultLinkColor:"#94a3b8",titleColor:"#f8fafc",edgeLabelBackground:"#0f172a",textColor:"#e2e8f0",actorBkg:"#111827",actorBorder:"#38bdf8",actorTextColor:"#f8fafc",actorLineColor:"#475569",signalColor:"#e2e8f0",signalTextColor:"#e2e8f0",labelBoxBkgColor:"#111827",labelBoxBorderColor:"#38bdf8",labelTextColor:"#f8fafc",loopTextColor:"#f8fafc",noteBkgColor:"#1e293b",noteBorderColor:"#60a5fa",noteTextColor:"#e2e8f0",activationBorderColor:"#22d3ee",activationBkgColor:"#0f172a",sequenceNumberColor:"#0b1220"}}),window.mermaid=t}).catch(e=>{throw window.__crittoraMermaidReady=void 0,e})),window.__crittoraMermaidReady})(),!window.mermaid)throw new Error("Mermaid unavailable");const{svg:l}=await window.mermaid.render(`mermaid-${m}`,t);e&&(p(l),y(!1))}catch(l){e&&(y(!0),p(null))}})(),()=>{e=!1}},[t,m]),d?(0,u.Y)(l.Fragment,null,(0,u.Y)(a.A,{sx:{my:3,border:"1px solid",borderColor:"divider",borderRadius:2,backgroundColor:"#0b1220",overflow:"hidden"}},(0,u.Y)(a.A,{role:"button",tabIndex:0,"aria-label":"Open diagram in fullscreen modal",onClick:()=>f(!0),onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),f(!0))},sx:{p:2,overflowX:"auto",cursor:"zoom-in","& svg":{display:"block",width:"100%",height:"auto",minWidth:320}},dangerouslySetInnerHTML:{__html:d}})),(0,u.Y)(r.A,{open:g,onClose:()=>f(!1),maxWidth:!1,fullWidth:!0,PaperProps:{sx:{width:"92vw",maxWidth:"92vw",backgroundColor:"#08111d",border:"1px solid rgba(56, 189, 248, 0.22)"}},"aria-label":"Fullscreen diagram viewer"},(0,u.Y)(o.A,{sx:{p:{xs:1.5,md:2.5},position:"relative"}},(0,u.Y)(s.A,{"aria-label":"Close diagram viewer",onClick:()=>f(!1),sx:{position:"absolute",top:10,right:10,zIndex:1,color:"#f8fafc",backgroundColor:"rgba(8, 17, 29, 0.72)"}},(0,u.Y)(i.A,null)),(0,u.Y)(a.A,{sx:{overflow:"auto",pt:{xs:4,md:5},"& svg":{display:"block",width:"100%",height:"auto",minWidth:{xs:900,lg:1200}}},dangerouslySetInnerHTML:{__html:d}})))):(0,u.Y)(a.A,{sx:{my:3,border:"1px solid",borderColor:"divider",borderRadius:2,overflow:"hidden",backgroundColor:"#0f1720"}},h&&(0,u.Y)(c.A,{variant:"body2",sx:{px:2,py:1.25,color:"#f8fafc",borderBottom:"1px solid rgba(255,255,255,0.08)"}},"Mermaid preview unavailable. Showing source."),(0,u.Y)(a.A,{component:"pre",sx:{m:0,p:2,overflowX:"auto",color:"#dbe4ee",fontSize:"0.9rem",lineHeight:1.6}},(0,u.Y)("code",null,t)))}}}]);
3//# sourceMappingURL=component---src-templates-article-template-tsx-content-file-path-src-content-articles-en-agentic-engineering-is-not-a-discipline-shift-its-a-security-boundary-shift-mdx-cd40071dc7f31d20421e.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.