<?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: Umut Keskin</title>
    <description>The latest articles on DEV Community by Umut Keskin (@umutkeskin1001).</description>
    <link>https://dev.to/umutkeskin1001</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%2F3824553%2F54b3ed40-6b22-4524-89a1-e6ea70cb1ae2.png</url>
      <title>DEV Community: Umut Keskin</title>
      <link>https://dev.to/umutkeskin1001</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/umutkeskin1001"/>
    <language>en</language>
    <item>
      <title>[Boost]</title>
      <dc:creator>Umut Keskin</dc:creator>
      <pubDate>Sat, 14 Mar 2026 21:43:04 +0000</pubDate>
      <link>https://dev.to/umutkeskin1001/-3n34</link>
      <guid>https://dev.to/umutkeskin1001/-3n34</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/umutkeskin1001" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3824553%2F54b3ed40-6b22-4524-89a1-e6ea70cb1ae2.png" alt="umutkeskin1001"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/umutkeskin1001/hookchaos-webhook-stress-tester-cliopen-sourced-project-21ne" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;HookChaos: Webhook Stress Tester CLI/Open-Sourced Project&lt;/h2&gt;
      &lt;h3&gt;Umut Keskin ・ Mar 14&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#cli&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#opensource&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#showdev&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#testing&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>cli</category>
      <category>opensource</category>
      <category>showdev</category>
      <category>testing</category>
    </item>
    <item>
      <title>HookChaos: Webhook Stress Tester CLI/Open-Sourced Project</title>
      <dc:creator>Umut Keskin</dc:creator>
      <pubDate>Sat, 14 Mar 2026 21:19:39 +0000</pubDate>
      <link>https://dev.to/umutkeskin1001/hookchaos-webhook-stress-tester-cliopen-sourced-project-21ne</link>
      <guid>https://dev.to/umutkeskin1001/hookchaos-webhook-stress-tester-cliopen-sourced-project-21ne</guid>
      <description>&lt;p&gt;An order got fulfilled twice. Took me two days to figure out our handler wasn't idempotent and the provider was retrying on timeout. Fine, lesson learned.&lt;/p&gt;

&lt;p&gt;Then it happened again. Different bug, same category — a webhook edge case we never tested for because our "testing" was basically: send a ping, get a 200, ship it.&lt;/p&gt;

&lt;p&gt;That's when I realized we had no real way to test the bad stuff. Duplicate events, out-of-order delivery, delayed events hitting stale state, signature validation breaking over a trailing newline. We just hoped production wouldn't surface them.&lt;/p&gt;

&lt;p&gt;Production always surfaces them.&lt;/p&gt;

&lt;p&gt;So I built HookChaos — a local-first CLI that throws these scenarios at your endpoint before production does.&lt;br&gt;
'''bash&lt;br&gt;
hookchaos run --pack duplicates --target &lt;a href="http://localhost:3000/webhooks" rel="noopener noreferrer"&gt;http://localhost:3000/webhooks&lt;/a&gt;&lt;br&gt;
'''&lt;br&gt;
Built-in scenario packs for the common failure modes, write your own, save and replay results, share with your team. Visual studio if you hate terminals.&lt;/p&gt;

&lt;p&gt;Open source and early stage: &lt;br&gt;


&lt;/p&gt;
&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/umutkeskin1001-cell" rel="noopener noreferrer"&gt;
        umutkeskin1001-cell
      &lt;/a&gt; / &lt;a href="https://github.com/umutkeskin1001-cell/HookChaos" rel="noopener noreferrer"&gt;
        HookChaos
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
       │ Local-first CLI for reproducible webhook failure simulation with reusable chaos packs, HTML reports, and Git-backed    │ pack sharing. 
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;HookChaos&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;HookChaos is the package manager for webhook failure scenarios.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;HookChaos is a local-first CLI for reproducible webhook failure simulation. It is built for the bugs that only show up when webhook consumers see duplicates, out-of-order deliveries, retries, signature failures, timestamp skew, and selective drops.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Why This Exists&lt;/h2&gt;
&lt;/div&gt;

&lt;p&gt;Most webhook tooling helps you receive traffic.&lt;/p&gt;

&lt;p&gt;That is not enough when the real bug is in what happens after the first happy-path request:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the same event is delivered twice&lt;/li&gt;
&lt;li&gt;a later event arrives first&lt;/li&gt;
&lt;li&gt;a retry lands after your state already changed&lt;/li&gt;
&lt;li&gt;signature or timestamp validation rejects an otherwise valid payload&lt;/li&gt;
&lt;li&gt;one delivery disappears while the rest of the sequence continues&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;HookChaos turns those failure modes into reusable packs you can run on demand, save locally, publish to a Git-backed registry, and replay from history.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Install&lt;/h2&gt;
&lt;/div&gt;

&lt;p&gt;Install HookChaos into &lt;code&gt;~/.local/bin&lt;/code&gt;:&lt;/p&gt;

&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;&lt;span class="pl-c1"&gt;cd&lt;/span&gt; /path/to/hookchaos
make install
&lt;span class="pl-k"&gt;export&lt;/span&gt; PATH=&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;span class="pl-smi"&gt;$HOME&lt;/span&gt;/.local/bin:&lt;span class="pl-smi"&gt;$PATH&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;…
&lt;/div&gt;
&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/umutkeskin1001-cell/HookChaos" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;



&lt;p&gt;&lt;br&gt;&lt;br&gt;
What's the worst webhook bug you've dealt with? Asking because that's literally how the scenario list is going to grow.&lt;/p&gt;

</description>
      <category>cli</category>
      <category>opensource</category>
      <category>showdev</category>
      <category>testing</category>
    </item>
  </channel>
</rss>
