<?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: Aniketh</title>
    <description>The latest articles on DEV Community by Aniketh (@aniketh_609).</description>
    <link>https://dev.to/aniketh_609</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%2F3795666%2Fe45facc1-13a0-4c15-98c3-21252204eb32.png</url>
      <title>DEV Community: Aniketh</title>
      <link>https://dev.to/aniketh_609</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aniketh_609"/>
    <language>en</language>
    <item>
      <title>What Delve Got Wrong: Why Compliance Evidence Needs to Be Cryptographically Provable</title>
      <dc:creator>Aniketh</dc:creator>
      <pubDate>Thu, 26 Mar 2026 12:31:10 +0000</pubDate>
      <link>https://dev.to/aniketh_609/what-delve-got-wrong-why-compliance-evidence-needs-to-be-cryptographically-provable-b00</link>
      <guid>https://dev.to/aniketh_609/what-delve-got-wrong-why-compliance-evidence-needs-to-be-cryptographically-provable-b00</guid>
      <description>&lt;p&gt;In March 2026, Delve.co was found to have fabricated 494 SOC 2 reports. Pre-written auditor conclusions. Identical templates across hundreds of clients. It went completely under the radar because the evidence was a PDF. You either opened and trust what you read or you didn't.&lt;/p&gt;

&lt;p&gt;That's not a Delve problem(though what people did find in those reports is truly wild). That's an architecture problem. Compliance evidence today can't prove itself. It can and should, by design.&lt;/p&gt;

&lt;p&gt;Built &lt;code&gt;pip install agentmint&lt;/code&gt; for teams to build their own receipts:&lt;/p&gt;




&lt;h2&gt;
  
  
  The Receipt
&lt;/h2&gt;

&lt;p&gt;AgentMint generates this for every agent action — allowed or blocked:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"receipt_id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"7d92b1a4"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"agent"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"sre-bot"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"delete:database:production"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"in_policy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;false&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"reason"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"no scope pattern matched"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"signature"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Ed25519:a3f9c8e2..."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"prev_hash"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"sha256:e7f2a1b3..."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"timestamp_rfc3161"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"MIIb3gYJKoZI..."&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Three things make this unfakeable:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ed25519 Signature&lt;/strong&gt; — covers the entire receipt. Change one character, signature breaks. Verifiable with the public key alone. No API call. No vendor. No internet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SHA-256 Hash Chain&lt;/strong&gt; — each receipt includes the hash of the previous one. Gaps, insertions, or reordering break the chain. Delve's 494 reports had no linkage — no way to detect if a report was modified or fabricated after the fact.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RFC 3161 Timestamp&lt;/strong&gt; — an independent authority signs the receipt hash with its own clock. Proves the receipt existed at a specific time, even if your servers are compromised.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Happens When Someone Tampers
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="c"&gt;# Receipt says action was denied (in_policy: false)&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="c"&gt;# Attacker changes it to look approved&lt;/span&gt;
&lt;span class="nv"&gt;$ &lt;/span&gt;&lt;span class="nb"&gt;sed&lt;/span&gt; &lt;span class="nt"&gt;-i&lt;/span&gt; &lt;span class="s1"&gt;'s/"in_policy": false/"in_policy": true/'&lt;/span&gt; receipt.json

&lt;span class="nv"&gt;$ &lt;/span&gt;python3 verify_sigs.py

  ✓ c391e43c  &lt;span class="nb"&gt;read&lt;/span&gt;:logs:prod  &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="k"&gt;in &lt;/span&gt;policy&lt;span class="o"&gt;)&lt;/span&gt;
  ✗ FAILED  7d92b1a4  delete:database:production  &lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="k"&gt;in &lt;/span&gt;policy&lt;span class="o"&gt;)&lt;/span&gt;

  Signatures: 1 verified, 1 failed
  ↳ One bit changed. Signature broken. Receipt tampered.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The math is mathing or it isn't. No trust required.&lt;/p&gt;




&lt;h2&gt;
  
  
  What's NOT in the Receipt
&lt;/h2&gt;

&lt;p&gt;Same principle as Merkle trees — the chain is all hashes and metadata, never the underlying data. Which agent, what action, in-policy or not, timestamps, signatures. No customer data. No PII. No credentials. Nothing confidential.&lt;/p&gt;

&lt;p&gt;Delve leaked a Google spreadsheet with confidential client reports. AgentMint receipts contain nothing that can be leaked.&lt;/p&gt;




&lt;h2&gt;
  
  
  How It Maps to Compliance
&lt;/h2&gt;

&lt;p&gt;One receipt chain covers the common denominator across frameworks: who did what, when, was it authorized, and can you prove it.&lt;/p&gt;

&lt;p&gt;SOC 2, HIPAA, EU AI Act, AIUC-1, ISO 27001, GDPR — the same signed, hash-chained evidence satisfies audit trail requirements across all of them. Full mapping in &lt;a href="http://COMPLIANCE.md" rel="noopener noreferrer"&gt;COMPLIANCE.md&lt;/a&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Try It
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="kn"&gt;from&lt;/span&gt; &lt;span class="n"&gt;agentmint&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="n"&gt;AgentMint&lt;/span&gt;

&lt;span class="n"&gt;mint&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nc"&gt;AgentMint&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;quiet&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="bp"&gt;True&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;plan&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;mint&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;issue_plan&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="n"&gt;action&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;read:reports:quarterly&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;user&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;admin@company.com&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;scope&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;read:reports:*&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
    &lt;span class="n"&gt;delegates_to&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;analytics-agent&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;result&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;mint&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;delegate&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;plan&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;analytics-agent&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;delete:reports:quarterly&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="c1"&gt;# result.status.value → 'checkpoint_required'
# result.receipt — signed denial, hash-chained, timestamped
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;bash VERIFY.sh evidence/
  Timestamps: 2 / 2 verified
  Signatures: 2 verified, 0 failed
  Flagged: 1 out-of-policy
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;code&gt;pip install agentmint&lt;/code&gt; — &lt;a href="https://github.com/aniketh-maddipati/agentmint-python" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  If Your Compliance Evidence Can't Survive the Vendor Disappearing, It Was Never Evidence
&lt;/h2&gt;

&lt;p&gt;AgentMint is open source. The receipts are yours. They verify with openssl alone and never expire — even if AgentMint does.&lt;/p&gt;

&lt;p&gt;If you were affected by Delve or need compliance evidence that proves itself, I embed with your team and get this running in 2-3 weeks. You keep everything.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://calendly.com/aniketh-maddipati/15min" rel="noopener noreferrer"&gt;&lt;strong&gt;Book 15 min&lt;/strong&gt;&lt;/a&gt; · &lt;a href="https://linkedin.com/in/anikethmaddipati" rel="noopener noreferrer"&gt;DM me on LinkedIn&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Built by&lt;/em&gt; &lt;a href="https://linkedin.com/in/anikethmaddipati" rel="noopener noreferrer"&gt;&lt;em&gt;Aniketh Maddipati&lt;/em&gt;&lt;/a&gt;&lt;em&gt;. NYC. Runtime enforcement for AI agents.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>sec</category>
      <category>programming</category>
      <category>security</category>
    </item>
    <item>
      <title>Stop Letting Your AI Agent Forge Human Approval</title>
      <dc:creator>Aniketh</dc:creator>
      <pubDate>Fri, 27 Feb 2026 01:07:36 +0000</pubDate>
      <link>https://dev.to/aniketh_609/stop-letting-your-ai-agent-forge-human-approval-2h9k</link>
      <guid>https://dev.to/aniketh_609/stop-letting-your-ai-agent-forge-human-approval-2h9k</guid>
      <description>&lt;h3&gt;
  
  
  2:47am. Your support agent issues a $500 refund. Compliance asks: "Who approved this?"
&lt;/h3&gt;

&lt;p&gt;You check the logs. Valid OAuth token. Agent was authorized to access Stripe. But nothing says a human approved &lt;em&gt;this specific refund&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;That's the gap. Session auth proves capability. It doesn't prove approval.&lt;/p&gt;

&lt;p&gt;I built AgentMint to close it.&lt;/p&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;Human clicks approve → AgentMint signs a token:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"sub"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"alice@company.com"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"action"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"refund:order:123:max:50"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"exp"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"60 seconds"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"jti"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"f1268944-..."&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Agent includes token in the API call. Downstream verifies:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Signature valid? (Ed25519, can't forge)&lt;/li&gt;
&lt;li&gt;Expired? (short-lived, can't hoard)&lt;/li&gt;
&lt;li&gt;Already used? (JTI tracked, can't replay)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Passes → action executes, audit log updated.&lt;br&gt;
Fails → blocked.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;~3ms verification. Single-use. Cryptographic proof of who approved what, when.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Who needs this
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Industry&lt;/th&gt;
&lt;th&gt;Blocked action&lt;/th&gt;
&lt;th&gt;Why they're stuck&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Fintech&lt;/td&gt;
&lt;td&gt;Refunds, credits&lt;/td&gt;
&lt;td&gt;Can't prove human approved specific transaction&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Healthcare&lt;/td&gt;
&lt;td&gt;Record amendments&lt;/td&gt;
&lt;td&gt;HIPAA audit trail requirements&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Legal tech&lt;/td&gt;
&lt;td&gt;Contract modifications&lt;/td&gt;
&lt;td&gt;Need proof of attorney approval&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;DevOps&lt;/td&gt;
&lt;td&gt;Prod deploys&lt;/td&gt;
&lt;td&gt;Change management requires human sign-off&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Common pattern:&lt;/strong&gt; The agent works. Legal says no because there's no proof a human approved &lt;em&gt;this specific action&lt;/em&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  What this unlocks
&lt;/h2&gt;

&lt;p&gt;Your support agent goes from "I can suggest a refund" to "I can issue the refund with Alice's signed approval attached."&lt;/p&gt;

&lt;p&gt;Your deploy agent goes from "PR ready for review" to "Deployed to prod with engineer sign-off token verified by CI."&lt;/p&gt;

&lt;p&gt;The agent gets write access. Compliance gets attribution. Everyone moves faster.&lt;/p&gt;

&lt;h2&gt;
  
  
  Does it scale?
&lt;/h2&gt;

&lt;p&gt;Current prototype: single-node, in-memory JTI tracking.&lt;/p&gt;

&lt;p&gt;Production path:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;JTI store&lt;/strong&gt;: Redis or DynamoDB with TTL expiry. Lookup stays ~15μs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keys&lt;/strong&gt;: HSM-backed signing (CloudHSM, GCP HSM). Rotation with grace periods.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Throughput&lt;/strong&gt;: ~300 req/s per instance at 3ms/verify. Horizontal scaling with shared JTI backend.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The primitives are simple. Scaling is standard distributed systems work.&lt;/p&gt;

&lt;h2&gt;
  
  
  SDK or proxy?
&lt;/h2&gt;

&lt;p&gt;Two integration paths:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SDK approach&lt;/strong&gt;: Agent calls &lt;code&gt;agentmint.verify(token)&lt;/code&gt; before executing sensitive actions. Explicit, fine-grained control. You decide where verification happens.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Transparent proxy&lt;/strong&gt;: AgentMint sits between agent and downstream API. Strips and verifies token from header, forwards request if valid. Zero agent code changes.&lt;/p&gt;

&lt;p&gt;Current prototype supports both. Proxy is faster to adopt. SDK is more flexible.&lt;/p&gt;

&lt;p&gt;MCP integration is next — verification as a tool server that agents call through the protocol.&lt;/p&gt;

&lt;h2&gt;
  
  
  Run it
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/aniketh-maddipati/agentmint
&lt;span class="nb"&gt;cd &lt;/span&gt;agentmint
cargo run
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;~500 lines of Rust. Ed25519 signatures. Replay protection. Audit log.&lt;/p&gt;

&lt;p&gt;If you're building agents that need write access and keep hitting the "legal won't sign off" wall, I want to hear what's blocking you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Repo&lt;/strong&gt;: &lt;a href="https://github.com/aniketh-maddipati/agentmint" rel="noopener noreferrer"&gt;github.com/aniketh-maddipati/agentmint&lt;/a&gt;&lt;/p&gt;

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