<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Etminan News</title>
    <link>https://etminan.dev/news.html</link>
    <description>Etminan release announcements — what shipped in each version, newest first.</description>
    <language>en-us</language>
    <atom:link xmlns:atom="http://www.w3.org/2005/Atom" href="https://etminan.dev/feed.xml" rel="self" type="application/rss+xml"/>
    <!-- NEW_ITEMS_INSERT_POINT: release-announcement.yml inserts new <item> blocks
         directly after this comment, newest first — do not remove or reorder it. -->

    <item>
      <title>v0.7.0</title>
      <link>https://etminan.dev/news.html#v0-7-0</link>
      <guid isPermaLink="true">https://etminan.dev/news.html#v0-7-0</guid>
      <pubDate>Wed, 22 Jul 2026 11:28:33 +0000</pubDate>
      <description>Housekeeping release: the workspace moved from Rust edition 2021 to 2024 (adopting stable let-chains where clippy now suggests them; no behavior change), and the packaging metadata (Cargo.toml, debian/control, debian/copyright, debian/changelog) was corrected to Etminan's own dedicated project identity instead of the shared monorepo-wide one it had been carrying by oversight.</description>
    </item>

    <item>
      <title>v0.6.0</title>
      <link>https://etminan.dev/news.html#v0-6-0</link>
      <guid isPermaLink="true">https://etminan.dev/news.html#v0-6-0</guid>
      <pubDate>Wed, 22 Jul 2026 10:21:21 +0000</pubDate>
      <description>Every alarm finding now carries a stable, machine-matchable "kind" field alongside the existing free-form text, so a PagerDuty/Slack/webhook rule can route on category without parsing prose. Paired with new per-channel message formatting (ETMINAN_NOTIFY_&lt;CHANNEL&gt;_FORMAT). New Notification channels page covering the full contract.</description>
    </item>

    <item>
      <title>v0.5.0</title>
      <link>https://etminan.dev/news.html#v0-5-0</link>
      <guid isPermaLink="true">https://etminan.dev/news.html#v0-5-0</guid>
      <pubDate>Wed, 22 Jul 2026 01:22:37 +0000</pubDate>
      <description>BREAKING: change-source (ticket-system) correlation moved from an in-process HTTP client to an external, allowlisted, hash-verified plugin process — now formalized as the Etminan Plugin API, which also covers new PagerDuty/Slack/generic-webhook notification channels. etminan-verifier no longer depends on tss-esapi at build time and cross-compiles cleanly to musl. New rotate-tls command. Package-manager correlation deepened with install/upgrade transaction timing and trust-store verification.</description>
    </item>

    <item>
      <title>v0.3.0</title>
      <link>https://etminan.dev/news.html#v0-3-0</link>
      <guid isPermaLink="true">https://etminan.dev/news.html#v0-3-0</guid>
      <pubDate>Tue, 21 Jul 2026 11:48:59 +0000</pubDate>
      <description>Every trust-changing action is now signed and recorded in a new self-contained, hash-chained audit log. BREAKING: enroll, baseline reject, and baseline exclude revoke now require --key/--reason. etminan-agent now watches every configured path with unprivileged fanotify for near-instant write detection. New centralized profile registry via assign-profile.</description>
    </item>

  </channel>
</rss>
