<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>SmartDecision changelog</title><description>What changed in each SmartDecision release. Security fixes are marked.</description><link>https://www.smartdecision.io/</link><item><title>SmartDecision 0.4.0</title><link>https://www.smartdecision.io/changelog#v0.4.0</link><guid isPermaLink="true">https://www.smartdecision.io/changelog#v0.4.0</guid><pubDate>Tue, 13 Oct 2026 00:00:00 GMT</pubDate><content:encoded>&lt;h3 id=&quot;versions&quot;&gt;Versions&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;A saved change that would break your apps no longer breaks them. If a decision has already answered API requests and you add an input, remove an output, change a field’s type, or add a new value to a text or true/false output, saving creates a new version. Requests without a &lt;code&gt;SmartDecision-Version&lt;/code&gt; header keep getting the previous version until you retire it.&lt;/li&gt;
&lt;li&gt;Response headers say which version answered and which version is the latest.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;licensing&quot;&gt;Licensing&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Without a license key, SmartDecision shows only the key screen.&lt;/li&gt;
&lt;li&gt;When a license expires, everything keeps working for 14 days. From day 15 the workspace is read-only, and from day 31 the resolve API stops answering. Banners warn you before each stage, and a new key restores everything at once.&lt;/li&gt;
&lt;li&gt;Trial keys can have shorter stages.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;drafting&quot;&gt;Drafting&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;When the AI can’t draft a table, you now see why: the policy is too long for one decision, or the AI’s table had a problem it couldn’t fix. SmartDecision sends an invalid table back to the AI once to correct it before giving up.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;installing&quot;&gt;Installing&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The installer asks whether to use the built-in AI or your own AI server on your network (Ollama, vLLM or llama.cpp).&lt;/li&gt;
&lt;/ul&gt;</content:encoded></item><item><title>SmartDecision 0.3.0: First release</title><link>https://www.smartdecision.io/changelog#v0.3.0</link><guid isPermaLink="true">https://www.smartdecision.io/changelog#v0.3.0</guid><pubDate>Mon, 05 Oct 2026 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;The first version of SmartDecision for customers. It installs on your own Linux server with one script and your license key.&lt;/p&gt;
&lt;h3 id=&quot;writing-decisions&quot;&gt;Writing decisions&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Draft a decision table from a policy written in plain English. The built-in AI runs on your server. It starts loading when you open &lt;strong&gt;New decision&lt;/strong&gt; and stops after 10 minutes without use, so it only takes memory while you draft.&lt;/li&gt;
&lt;li&gt;Rules read as sentences: IF the conditions match, THEN these outputs. Open a rule to edit its AND and OR conditions, reorder rules by dragging or with Alt and the arrow keys, and add an optional &lt;strong&gt;Otherwise&lt;/strong&gt; rule at the end. The table view is still there, and both views edit the same draft.&lt;/li&gt;
&lt;li&gt;Inputs and outputs show above the rules. Create new ones from inside a rule. After a decision is saved, renaming a field changes its label only, so the API key your apps send stays the same until you change it on purpose.&lt;/li&gt;
&lt;li&gt;Rules show their problems where they are: a rule that never runs, a value that can’t be compared, a missing output. Saving with problems asks you first and says what callers will get.&lt;/li&gt;
&lt;li&gt;Your saved tests run against unsaved changes as you edit. The editor says “All 4 tests pass” or “1 of 4 tests would fail” and links to the rule that answered. Saving a draft that fails tests asks you first.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;teams-and-activity&quot;&gt;Teams and activity&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;The first person to sign up becomes the admin. Everyone else joins with an invitation from &lt;strong&gt;Settings&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;The activity log shows who changed what, with the before and after of each change.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;installing&quot;&gt;Installing&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;install.sh&lt;/code&gt; downloads SmartDecision from get.smartdecision.io with your license key and starts it with Docker Compose. There is no registry to log into.&lt;/li&gt;
&lt;li&gt;Choose the built-in AI, your own AI server, or no AI. The built-in model is Qwen3-4B-Instruct-2507: a 2.5 GB download that needs about 8 GB of RAM while drafting, and no GPU.&lt;/li&gt;
&lt;li&gt;Enter your license key in &lt;strong&gt;Settings&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;fixes&quot;&gt;Fixes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;A true/false input set to any value no longer makes the resolve API answer with an error.&lt;/li&gt;
&lt;li&gt;Ranges on inputs saved with the old text type compare as text instead of failing.&lt;/li&gt;
&lt;/ul&gt;</content:encoded></item></channel></rss>