<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>XKV on SoftDevStudio.com</title>
    <link>https://softdevstudio.com/tags/xkv/</link>
    <description>Recent content in XKV on SoftDevStudio.com</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Mon, 19 Oct 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://softdevstudio.com/tags/xkv/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>XKV Launches as a Key-Value Store That Remembers Why Each Value Changed</title>
      <link>https://softdevstudio.com/xkv-launches-as-a-key-value-store-that-remembers-why-each-value-changed/</link>
      <pubDate>Mon, 19 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://softdevstudio.com/xkv-launches-as-a-key-value-store-that-remembers-why-each-value-changed/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://xkv.org/what-an-explainable-key-value-store-is-and-why-small-values-need-one/&#34;&gt;XKV&lt;/a&gt;, the studio&amp;rsquo;s twenty-second project, is for the small values that cause big trouble: credit limits, prices, timeouts, feature switches, and the settings AI agents now change on their own. A normal store keeps the value and forgets the story. XKV makes every write say who made it and why, and lets it name the earlier changes that caused it, on any key. Ask a value why and it walks the chain back. A credit limit of 50 points at a risk score of 0.82, which points at a card dispute billing recorded from a bank notice.&lt;/p&gt;</description>
    </item>
    <item>
      <title>XKV Streams Each Change the Moment It Commits, Reason Included</title>
      <link>https://softdevstudio.com/xkv-streams-each-change-the-moment-it-commits-reason-included/</link>
      <pubDate>Mon, 19 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://softdevstudio.com/xkv-streams-each-change-the-moment-it-commits-reason-included/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://xkv.org/xkv-now-streams-every-change-as-it-commits-with-the-reason-attached/&#34;&gt;XKV 0.3.0&lt;/a&gt; adds watch. A program gets every new revision as its transaction commits, with the writer, the reason and the changes that caused it, so whatever reacts to a change, a cache refresh, an alert or an audit line, also knows why it happened. It&amp;rsquo;s &lt;code&gt;Watch&lt;/code&gt; in Go, &lt;code&gt;xkv watch&lt;/code&gt; in a shell, and a stream over HTTP that a browser can read and resume.&lt;/p&gt;&#xA;&lt;p&gt;Revisions arrive in order, each once, never half a transaction, and a restarted watcher picks up where it stopped. A watcher in another process follows the file, and if compaction removed changes it hadn&amp;rsquo;t reached it says so instead of skipping them. Twenty writers killed with SIGKILL mid-stream lost none of their 3,996 acknowledged transactions on the watcher&amp;rsquo;s side. The &lt;a href=&#34;https://xkv.org/demo/&#34;&gt;live demo&lt;/a&gt; now shows changes arriving as you make them. With exchange in &lt;a href=&#34;https://softdevstudio.com/xkv-swaps-changes-between-stores-and-keeps-the-reasons-with-them/&#34;&gt;0.2.0&lt;/a&gt;, that completes the plan YK approved.&lt;/p&gt;</description>
    </item>
    <item>
      <title>XKV Swaps Changes Between Stores and Keeps the Reasons With Them</title>
      <link>https://softdevstudio.com/xkv-swaps-changes-between-stores-and-keeps-the-reasons-with-them/</link>
      <pubDate>Mon, 19 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://softdevstudio.com/xkv-swaps-changes-between-stores-and-keeps-the-reasons-with-them/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://xkv.org/xkv-can-now-swap-changes-between-stores-and-keep-the-reasons-behind-them/&#34;&gt;XKV 0.2.0&lt;/a&gt; adds exchange. One store exports its recent changes as a file, another imports it, and every change arrives with its actor, reason, ref and causes, so &lt;code&gt;Why&lt;/code&gt; gives the same chain on both sides. Think of a service and its staging copy, two sites that each take writes, or a laptop that was offline for a day.&lt;/p&gt;&#xA;&lt;p&gt;Each change carries what its writer had seen of the key, so an import can tell an update from a conflict without trusting clocks. In a conflict the later change wins on every store and the other one stays in the key&amp;rsquo;s history. Twenty pairs and 90 rings, stars and meshes of stores, with clocks up to 74 minutes apart, all ended with the same values; 40 kills during an import left nothing half done; a fuzzer rewrote files 3.6 million times without a panic. Stores from 0.1 open as before and upgrade with one command. Watch, a live stream of new changes, is next.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
