<?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: Rostyslav Myronenko</title>
    <description>The latest articles on DEV Community by Rostyslav Myronenko (@rostyslav_myronenko_faf2f).</description>
    <link>https://dev.to/rostyslav_myronenko_faf2f</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2936970%2F76d61592-b2c0-42e4-b215-986f2199e23d.jpg</url>
      <title>DEV Community: Rostyslav Myronenko</title>
      <link>https://dev.to/rostyslav_myronenko_faf2f</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rostyslav_myronenko_faf2f"/>
    <language>en</language>
    <item>
      <title>Why Checkov catches the WHAT but not the WHY</title>
      <dc:creator>Rostyslav Myronenko</dc:creator>
      <pubDate>Tue, 14 Apr 2026 07:30:00 +0000</pubDate>
      <link>https://dev.to/rostyslav_myronenko_faf2f/why-checkov-catches-the-what-but-not-the-why-3mlk</link>
      <guid>https://dev.to/rostyslav_myronenko_faf2f/why-checkov-catches-the-what-but-not-the-why-3mlk</guid>
      <description>&lt;p&gt;Checkov is excellent. I use it. You should use it. This article is not an attack on Checkov.&lt;/p&gt;

&lt;p&gt;But there's a specific class of infrastructure risk that Checkov - and every rule-based IaC linter - structurally cannot catch. Understanding the difference changes how you think about infrastructure reviews.&lt;/p&gt;

&lt;p&gt;Let's call it the WHAT vs WHY problem.&lt;/p&gt;

&lt;h2&gt;
  
  
  What rule-based linters do
&lt;/h2&gt;

&lt;p&gt;Checkov, Trivy, tfsec, KICS - all of them operate on the same principle: encode a known-bad pattern as a rule, flag any resource that matches the pattern.&lt;/p&gt;

&lt;p&gt;This is powerful. It's also inherently scoped to individual resources.&lt;/p&gt;

&lt;p&gt;A rule that says "RDS instances should have Multi-AZ enabled" looks at a single 'aws_db_instance' block. It doesn't know what depends on that database. It doesn't know what your SLA commitment is. It doesn't know that the Lambda function reading from it handles payment webhooks.&lt;/p&gt;

&lt;p&gt;The rule catches the WHAT: Multi-AZ is disabled.&lt;/p&gt;

&lt;p&gt;It can't catch the WHY: that this specific database going down takes out your entire revenue pipeline.&lt;/p&gt;

&lt;h2&gt;
  
  
  An example: the clean Checkov output problem
&lt;/h2&gt;

&lt;p&gt;Here's a real pattern I see in Terraform codebases:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;S3 bucket: logging disabled → Checkov flags it ✓&lt;/li&gt;
&lt;li&gt;IAM role: wildcard action on that S3 bucket → Checkov flags it ✓&lt;/li&gt;
&lt;li&gt;Lambda: reads from the bucket + writes to RDS → not flagged&lt;/li&gt;
&lt;li&gt;RDS: Multi-AZ disabled, no automated backups enabled → Checkov flags both ✓&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Checkov catches four individual issues. What it doesn't catch: that these four issues together create a system where a compromised Lambda can exfiltrate the entire data tier, and if the RDS instance fails during the exfiltration, there's no backup and no audit trail.&lt;/p&gt;

&lt;p&gt;This isn't four separate findings. It's one architecture finding: your data tier has no defence in depth.&lt;/p&gt;

&lt;p&gt;Rule-based tools report each flag independently. They have no model of how resources relate to each other.&lt;/p&gt;

&lt;h2&gt;
  
  
  What architecture reasoning adds
&lt;/h2&gt;

&lt;p&gt;The AWS Well-Architected Framework is the closest thing the industry has to a structured architecture reasoning system. Its five pillars — Security, Reliability, Performance Efficiency, Cost Optimization, Operational Excellence - are explicitly about systems-level thinking, not individual resource configuration.&lt;/p&gt;

&lt;p&gt;When a senior engineer reviews Terraform, they're not running through a checklist. They're asking:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What is the blast radius if this component fails?&lt;/li&gt;
&lt;li&gt;What does the audit trail look like under a security incident?&lt;/li&gt;
&lt;li&gt;Where are the single points of failure?&lt;/li&gt;
&lt;li&gt;What happens at 10x current load?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These questions require knowing how components relate to each other — which is precisely what a rule engine cannot do.&lt;/p&gt;

&lt;h2&gt;
  
  
  The gap in practice
&lt;/h2&gt;

&lt;p&gt;In real infrastructure reviews, the conversation that matters is almost never about the flagged resource. It's about what the flagged resource connects to.&lt;/p&gt;

&lt;p&gt;"Your S3 bucket logging is disabled" is the start of the conversation, not the finding.&lt;/p&gt;

&lt;p&gt;The finding is: "Your S3 bucket is the source of truth for your data pipeline, logging is disabled, and there's no alternative audit trail — which means a data breach would be undetectable until a customer reported missing data."&lt;/p&gt;

&lt;p&gt;That's architecture reasoning. It requires:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Knowing what the S3 bucket does in context (not just its configuration)&lt;/li&gt;
&lt;li&gt;Understanding the downstream impact (the pipeline, the data classification, the SLA)&lt;/li&gt;
&lt;li&gt;Synthesising multiple resource attributes into a single architectural narrative&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the analysis a senior DevOps engineer runs through in their head. It's not in any rule file.&lt;/p&gt;

&lt;h2&gt;
  
  
  How ArchGuard approaches this
&lt;/h2&gt;

&lt;p&gt;ArchGuard takes your Terraform code and a brief description of your workload, then generates structured findings across all four AWS Well-Architected pillars using architectural reasoning — not rule matching.&lt;/p&gt;

&lt;p&gt;Each finding has three parts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Evidence:&lt;/strong&gt; the specific resource, attribute, and value&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Why:&lt;/strong&gt; the architectural impact - what breaks, what's at risk, at what scale&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Recommendation:&lt;/strong&gt; a concrete action, not a link to the docs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is complementary to Checkov, not a replacement. Run your linter first. Checkov will catch the configuration issues efficiently, at scale, for free. Then run ArchGuard to understand what those findings mean in the context of your architecture.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;WHAT → Checkov. WHY → ArchGuard.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;ArchGuard is in early access at &lt;a href="https://archguard.io" rel="noopener noreferrer"&gt;archguard.io&lt;/a&gt;. Free during beta. You share your Terraform, describe your workload, and get a structured findings report back.&lt;/p&gt;

&lt;p&gt;If you run infrastructure reviews for clients — or you've inherited an AWS environment and want to understand what you're actually looking at — I'd genuinely like your feedback.&lt;/p&gt;

</description>
      <category>terraform</category>
      <category>aws</category>
      <category>devops</category>
      <category>security</category>
    </item>
    <item>
      <title>What's actually inside an EU AI Act Annex IV technical file (and what engineers usually miss)</title>
      <dc:creator>Rostyslav Myronenko</dc:creator>
      <pubDate>Tue, 07 Apr 2026 09:06:48 +0000</pubDate>
      <link>https://dev.to/rostyslav_myronenko_faf2f/whats-actually-inside-an-eu-ai-act-annex-iv-technical-file-and-what-engineers-usually-miss-4nh4</link>
      <guid>https://dev.to/rostyslav_myronenko_faf2f/whats-actually-inside-an-eu-ai-act-annex-iv-technical-file-and-what-engineers-usually-miss-4nh4</guid>
      <description>&lt;p&gt;If you're building a high-risk AI system for the EU market, you'll eventually need to produce an &lt;strong&gt;Annex IV Technical File&lt;/strong&gt;. Most engineers have no idea what's in it until someone from legal drops a deadline on their desk.&lt;/p&gt;

&lt;p&gt;Here's what it actually contains, what you need to build, and where teams consistently fall short.&lt;/p&gt;




&lt;h2&gt;
  
  
  What is the Annex IV Technical File?
&lt;/h2&gt;

&lt;p&gt;It's the mandatory documentation package that high-risk AI system &lt;strong&gt;providers&lt;/strong&gt; must compile before placing their system on the EU market. Think of it as the technical dossier a notified body or national authority would review if they came knocking.&lt;/p&gt;

&lt;p&gt;It's defined in &lt;strong&gt;Article 11&lt;/strong&gt; of the EU AI Act, with the full list of required contents in &lt;strong&gt;Annex IV&lt;/strong&gt;.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Who needs it?&lt;/strong&gt; Providers of high-risk AI systems under Annex III (employment screening, credit scoring, biometric identification, critical infrastructure, etc.) and systems integrated as safety components of regulated products under Annex I (medical devices, machinery, etc.).&lt;/p&gt;

&lt;p&gt;Deployers don't need to build one - but you should ask your provider for it. If they can't hand one over, that's a red flag.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  What It Must Contain
&lt;/h2&gt;

&lt;p&gt;The Technical File isn't a single document - it's a collection of artifacts across 9 areas:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. General description + intended purpose
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;What the system does, what it's designed for, and what it's explicitly &lt;em&gt;not&lt;/em&gt; designed for&lt;/li&gt;
&lt;li&gt;The categories of people it affects&lt;/li&gt;
&lt;li&gt;Input data types and outputs&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Development process and design choices
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;System architecture (with diagrams)&lt;/li&gt;
&lt;li&gt;Key design decisions and their rationale&lt;/li&gt;
&lt;li&gt;If it uses third-party components (models, datasets, libraries) - document them&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Risk management system (Article 9)
&lt;/h3&gt;

&lt;p&gt;This is the one that trips teams up most. Risk management under the AI Act is &lt;strong&gt;not a one-time checklist&lt;/strong&gt;. It must be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A continuous process throughout the lifecycle&lt;/li&gt;
&lt;li&gt;Documented with identified risks, mitigation measures, and residual risk assessments&lt;/li&gt;
&lt;li&gt;Updated when the system changes or new risks emerge&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Data governance (Article 10)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Description of training, validation, and test datasets&lt;/li&gt;
&lt;li&gt;Data collection and labelling methodology&lt;/li&gt;
&lt;li&gt;Known limitations and potential biases in the data&lt;/li&gt;
&lt;li&gt;Measures taken to detect and correct issues&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This needs to describe what &lt;em&gt;actually happened&lt;/em&gt;, not what you intended to do. Auditors know the difference.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. System architecture and technical specifications
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Detailed architecture documentation&lt;/li&gt;
&lt;li&gt;Hardware requirements&lt;/li&gt;
&lt;li&gt;Integration points and APIs&lt;/li&gt;
&lt;li&gt;Performance benchmarks&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  6. Monitoring, logging, and audit trails (Article 12)
&lt;/h3&gt;

&lt;p&gt;The system must automatically log events "to the extent appropriate to the intended purpose." Logs must be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sufficient to identify the start/end of each use session&lt;/li&gt;
&lt;li&gt;Tamper-evident (immutable or access-controlled)&lt;/li&gt;
&lt;li&gt;Retained for appropriate periods&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Common gap:&lt;/strong&gt; Teams have application logs but no AI-specific audit trail. "It's all in CloudWatch" isn't sufficient if you can't reconstruct what input produced what output for a given user at a given time.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Information for deployers (Article 13 — transparency)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Intended use and conditions of use&lt;/li&gt;
&lt;li&gt;Performance characteristics and limitations&lt;/li&gt;
&lt;li&gt;Human oversight requirements&lt;/li&gt;
&lt;li&gt;Pre-processing requirements for input data&lt;/li&gt;
&lt;li&gt;What the system cannot do (this is mandatory, not optional)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  8. Human oversight measures (Article 14)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;What oversight mechanisms are built into the system&lt;/li&gt;
&lt;li&gt;How a human can intervene, override, or halt the system&lt;/li&gt;
&lt;li&gt;Who is responsible for oversight and what training they need&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  9. Accuracy, robustness, and cybersecurity (Article 15)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Declared accuracy metrics (and what they mean)&lt;/li&gt;
&lt;li&gt;Performance across different groups or subpopulations&lt;/li&gt;
&lt;li&gt;Resilience against errors, faults, and adversarial inputs&lt;/li&gt;
&lt;li&gt;Cybersecurity measures&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Plus:&lt;/strong&gt; You'll also need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Conformity assessment results (where applicable)&lt;/li&gt;
&lt;li&gt;EU declaration of conformity (Article 47)&lt;/li&gt;
&lt;li&gt;Post-market monitoring plan (Article 72)&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  The Gaps Teams Consistently Miss
&lt;/h2&gt;

&lt;p&gt;After reviewing how teams approach this, a few gaps come up again and again:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Risk management as a checkbox, not a process&lt;/strong&gt;&lt;br&gt;
Teams write a risk assessment doc once, mark it done, and move on. The regulation explicitly requires it to be a &lt;em&gt;continuous&lt;/em&gt; process. Your Technical File needs to show it's maintained.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. No immutable audit logs&lt;/strong&gt;&lt;br&gt;
Application logs exist, but they're not tamper-evident and they don't capture what the AI system specifically decided. This is one of the harder technical gaps to retrofit.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Data governance docs describe intent, not reality&lt;/strong&gt;&lt;br&gt;
"We used a balanced, representative dataset" without specifics doesn't pass scrutiny. You need actual methodology, known limitations, and bias mitigation measures documented.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. Missing post-market monitoring plan&lt;/strong&gt;&lt;br&gt;
This is often the last thing teams think about. The AI Act requires it before deployment, not after. At minimum: what metrics you'll track, thresholds that trigger re-evaluation, and who's responsible.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;5. No "information for deployers" document&lt;/strong&gt;&lt;br&gt;
If you sell to businesses, they need documentation about how to use your system within its intended purpose. This is a separate deliverable from your internal technical docs.&lt;/p&gt;




&lt;h2&gt;
  
  
  Where to Start
&lt;/h2&gt;

&lt;p&gt;The Technical File sounds daunting but it's mostly about having &lt;em&gt;the right process&lt;/em&gt; in place from the start, not retrofitting it at the end.&lt;/p&gt;

&lt;p&gt;Before writing docs, identify which gaps actually exist in your system. There's a free tool that maps your current artifacts against each Annex IV pillar and tells you what's missing: &lt;a href="https://www.aiactgap.com" rel="noopener noreferrer"&gt;aiactgap.com&lt;/a&gt; - no login, no data stored, downloadable PDF report.&lt;/p&gt;

&lt;p&gt;The August 2026 deadline is when enforcement kicks in for existing high-risk systems. That's less time than it sounds when you factor in the documentation effort.&lt;/p&gt;




&lt;h2&gt;
  
  
  TL;DR
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Annex IV Technical File = mandatory for high-risk AI providers before EU market placement&lt;/li&gt;
&lt;li&gt;It spans 9 areas from architecture to post-market monitoring&lt;/li&gt;
&lt;li&gt;Risk management must be continuous, not a one-time doc&lt;/li&gt;
&lt;li&gt;Audit logs need to be AI-specific and tamper-evident&lt;/li&gt;
&lt;li&gt;The most-missed item: the post-market monitoring plan&lt;/li&gt;
&lt;li&gt;Deadline: August 2, 2026 for existing systems&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Built &lt;a href="https://www.aiactgap.com" rel="noopener noreferrer"&gt;aiactgap.com&lt;/a&gt; - a free EU AI Act gap checker that tells you which Annex IV artifacts you're missing. Happy to answer questions in the comments.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>programming</category>
      <category>eu</category>
      <category>security</category>
    </item>
  </channel>
</rss>
