The human supply chain behind AI, and why runtime enforcement is the missing layer

Originally drafted 16 January 2026. Republished under Aqta May 2026.

TL;DRThree AI coding assistants, same task, all three imported deprecated libraries, one pulled a known RCE vulnerability, none flagged it. The model is the easy part. The real risks in your AI stack live in the software and human supply chains beneath it. Runtime call traceability is one layer of the answer, next to SBOMs, static analysis and developer training. Not a replacement for them.
Editorial illustration: a single glass tower glowing cyan above the waterline, suggesting visible AI consumption. Below the waterline, a vast underwater factory of hands at keyboards, conveyor belts, and labelled data cards. A thin cyan seam runs along the waterline; receipt cards rise through it from below to the right of the tower. The hidden human labour that makes AI work, and the runtime layer that gives it a verifiable trail.

In an informal test I ran, three AI coding assistants, same task: build a logging function. All three imported deprecated libraries. One pulled in a dependency with a known RCE flaw. None flagged it.

November 2025: Coinbase Europe Limited fined €21.5M for AML monitoring failures, a reminder that control failures often compound quietly before anyone notices. The same pattern applies to AI-generated code: it is moving faster than the humans responsible for reviewing it.

Models are getting cheaper. Code generation is getting faster. The software and human infrastructure underneath is getting riskier.

The model is the easy part. What runs beneath it is not.

Models as commodities, code as floodwater

Foundation models are trending toward commodity economics, as costs collapse and performance converges, the differentiator shifts from "which model?" to "what do you build on top?"

If it is cheap to ask models for code, you will get a lot of code. Copilots, internal agents and code-generation tools make it trivial to produce new services, scripts and glue logic across the organisation. Every generated function can pull in new dependencies, touch new APIs and extend your blast radius.

The economics point to a rapid expansion of AI-generated code and agentic behaviour; the question is how to keep it safe once it is running.

A software supply chain that outpaces manual review

At the same time, the software supply chain is already beyond human scale. A 2024 CVE review shows 40,009 published vulnerabilities in a single year, up nearly 39% from 2023, roughly 108 new CVEs every day. Many are in open-source dependencies and transitive packages, precisely the libraries AI tools are happy to import without context.

Published vulnerability dataThe dependency review queue grew faster than a human team can read itThe figure counts published CVEs across the ecosystem. It does not measure vulnerabilities introduced by AI-generated code.
CVEs published in 202440,009
Increase from 2023Nearly 39%
Average publication rateAbout 108/day
Public CVE totals, not Aqta product data.Source: Jerry Gamblin, 2024 CVE Data Review

Even if your AI assistant writes "perfect" code, the libraries it pulls in may hide serious vulnerabilities. Security and platform teams are already struggling to:

  • Track which microservice is using which version of which library.
  • Understand how AI-generated changes alter runtime behaviour across complex systems.

Static scanning alone is not enough. What matters is how the AI-generated code and agents behave in production: what they call, what data they touch, what loops they get stuck in.

The people behind the model

The software supply chain is one problem. The human supply chain is another. Every major model was shaped by workers who labelled, annotated and moderated training data, often for poverty wages with no safety net.

The EU Corporate Sustainability Due Diligence Directive (CSDDD) will, once it phases in, require large companies to address human-rights impacts across their chains of activities, focused on direct (Tier-1) business partners under the Omnibus amendments, which can include AI training subcontractors.

A 2023 investigation found data labellers paid $1.32 to $2 per hour to review graphic content for a major AI system. The companies deploying those models carry that risk whether they know it or not.

Most companies cannot trace from "we use this model" to "here is who built it and under what conditions." That gap is an ethical and reputational exposure, not just a procurement footnote.

We want to be honest about what this means for runtime enforcement. A receipt at the call boundary can name the model and the version. It cannot tell you what the annotators were paid. That is a procurement, contracting and policy problem, not one that signing a JSON envelope solves. The receipt makes the model choice auditable. The decision to use a model trained under poor conditions still sits with the buyer.

What runtime receipts can and can't do

Seal sits in front of your AI agents and model calls. We want to be precise about the layer it operates on, because the rest of the stack still matters.

What we built

Every decision Seal clears, plus calls it suppresses for loop detection, produces an Ed25519-signed receipt: which model, the request hash, which policies were applied, at what cost, with what outcome. The receipt is verifiable offline with a published public key. Other denials are recorded in the audit trail. Policy runs on every call (budget caps, loop detection, PII and PHI redaction, content-policy and network threat blocking), not in a quarterly audit. Each model endpoint can be tagged with its hosting region and data-retention policy so the policy engine has those to enforce against.

What it proved

In the coding-assistant experiment above, each assistant’s call would produce a receipt naming the model that generated the suggestion. After a deprecated library is imported, the receipt history names which model proposed which import, at what cost, against which policy. That is not a defence against the import happening. It is an audit trail that survives the engineer leaving and the model version being retired.

Where it stops

A receipt at the call boundary does not run static analysis on the generated code. It does not detect a malicious package on import. It does not see what your dependency does at runtime once it is in the binary. SBOMs, static analysis, sandbox execution and developer training still matter, and the labour conditions discussed earlier are still a procurement-and-policy problem rather than a signing-key one. Runtime call traceability is one layer in a stack, not the only thing that scales.

The model is a commodity. The infrastructure that makes it trustworthy at scale is not. That is what we are building.

AI acts. Keep the receipt.

Seal clears consequential AI to ship with a signed receipt of what it decided. Anyone can verify it offline, without trusting us. Most tools audit after the fact; Seal clears AI to ship with a receipt.

References

  1. Central Bank of Ireland. "Coinbase Europe Limited €21.5M AML Penalty". 6 November 2025. Source
  2. Jerry Gamblin. "2024 CVE Data Review". 5 January 2025. Source
  3. TIME Magazine. "OpenAI Used Kenyan Workers on Less Than $2 Per Hour". January 2023. Source
  4. European Union. "Corporate Sustainability Due Diligence Directive (Directive 2024/1760/EU)". Official Journal of the European Union, 2024. Source
Share this article:

About Aqta

We sign the AI decision itself: a signed, offline-verifiable receipt for every AI decision, across any model, that anyone can check without trusting us. Built in Dublin. More at about / research / manifesto.

Aqta on LinkedIn