<turbo-stream action="append" target="changelog-entries"><template>
    <article class="bg-white rounded-lg border border-gray-200 overflow-hidden">
  <div class="bg-gray-50 px-6 py-4 border-b border-gray-200">
    <div class="flex items-center justify-between">
      <h2 class="text-lg font-semibold text-gray-900 font-mono">
        2026-09-06
      </h2>
    </div>
  </div>

  <div class="px-6 py-4 text-gray-700 leading-relaxed space-y-4">

        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">An insights library, and clearer feedback while items process</h2>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">What&#39;s New</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li><strong>Insights library</strong>: a new Insights page collects every card you have saved in one searchable place, showing each card&#39;s review status and a link back to its item. It is in the top navigation.</li>
            <li><strong>&quot;Don&#39;t show again&quot;</strong>: every review card can be pulled out of your daily rotation while staying saved in your library with its schedule intact, and restored later from the library.</li>
            <li><strong>Delete an insight</strong>: cards can now be permanently deleted, with a confirmation, rather than only being dismissed.</li>
            <li><strong>Processing feedback from the moment you submit</strong>: the item page shows that work is underway and roughly how long to expect, scaled to how long the material is. A newly submitted item previously showed nothing at all.</li>
            <li><strong>Fresher review deck</strong>: cards you have never reviewed are served first, so a backlog of overdue cards cannot crowd out what you just saved.</li>
        </ul>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Fixes</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li>Daily review sessions no longer end after a single card. They had been jumping straight to &quot;Complete&quot; instead of continuing through the deck.</li>
        </ul>
  </div>
</article>

    <article class="bg-white rounded-lg border border-gray-200 overflow-hidden">
  <div class="bg-gray-50 px-6 py-4 border-b border-gray-200">
    <div class="flex items-center justify-between">
      <h2 class="text-lg font-semibold text-gray-900 font-mono">
        2026-09-03
      </h2>
    </div>
  </div>

  <div class="px-6 py-4 text-gray-700 leading-relaxed space-y-4">

        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Revisit any past review, and sharper insight cards</h2>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">What&#39;s New</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li><strong>Review archive</strong>: pick any completed day from the review history strip to see that day&#39;s cards read-only, each showing the answer you gave. Finished days used to show nothing.</li>
            <li><strong>Better insight cards</strong>: cards now keep the author&#39;s core claims rather than only action steps, come out as a mix of types instead of all reading &quot;Insight&quot;, and near-identical ones are merged so one idea produces one card.</li>
            <li><strong>Links on review cards</strong>: the item and insight titles on each card now open their source.</li>
        </ul>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Fixes</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li>Changing an item&#39;s state now saves. The dropdown changed on screen but the change was never applied.</li>
            <li>Daily Review works properly on a phone: the remaining-count badge no longer wraps onto a second line, and long titles wrap instead of being cut off.</li>
            <li>The evidence on a review card no longer shows a play button that did nothing.</li>
        </ul>
  </div>
</article>

    <article class="bg-white rounded-lg border border-gray-200 overflow-hidden">
  <div class="bg-gray-50 px-6 py-4 border-b border-gray-200">
    <div class="flex items-center justify-between">
      <h2 class="text-lg font-semibold text-gray-900 font-mono">
        2026-08-28
      </h2>
    </div>
  </div>

  <div class="px-6 py-4 text-gray-700 leading-relaxed space-y-4">

        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Insights from the source itself, and a player that remembers where you were</h2>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">What&#39;s New</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li><strong>Insights from the document&#39;s own claims</strong>: insights now come from what the source actually argues, with quoted excerpts copied exactly from the text. Richer items produce more of them instead of hitting a fixed cap.</li>
            <li><strong>Typed cards</strong>: each insight is labelled Insight, Key point, Question, or Call to action, so a reflection prompt reads differently from an action step.</li>
            <li><strong>Your place is remembered</strong>: the player resumes where you stopped, separately for an item and its condensed version, and starts fresh once you finish.</li>
            <li><strong>Upload starts when you pick a file</strong>: choosing a PDF or EPUB begins uploading immediately.</li>
            <li><strong>Delete means delete</strong>: deleting an item removes it and its content for good, while Archive stays the reversible option.</li>
            <li><strong>Actions keep your place</strong>: deleting, switching tabs, or saving from your list no longer throws you back to the top of the page.</li>
        </ul>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Fixes</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li>Insight bodies show bold text and lists as real formatting instead of the raw markdown characters.</li>
            <li>Clicking an item in Search results opens it, instead of clearing the results with a &quot;Content missing&quot; error.</li>
        </ul>
  </div>
</article>

    <article class="bg-white rounded-lg border border-gray-200 overflow-hidden">
  <div class="bg-gray-50 px-6 py-4 border-b border-gray-200">
    <div class="flex items-center justify-between">
      <h2 class="text-lg font-semibold text-gray-900 font-mono">
        2026-08-23
      </h2>
    </div>
  </div>

  <div class="px-6 py-4 text-gray-700 leading-relaxed space-y-4">

        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Transcript timing is now measured, not estimated</h2>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">What&#39;s New</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li>Transcript timestamps are measured against the generated audio, so the time beside a paragraph is where it really starts. Previously they could be off by tens of seconds on long items.</li>
            <li><strong>Play from this point</strong> on an insight&#39;s evidence now starts at the exact sentence the quote begins at.</li>
        </ul>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Fixes</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li>Insight markers on the audio seek bar now appear where the evidence is. They had all collapsed to the start of the bar.</li>
            <li>Long items no longer play out of order.</li>
            <li>Evidence quotes that span a paragraph break are now highlighted in full.</li>
        </ul>
  </div>
</article>

    <article class="bg-white rounded-lg border border-gray-200 overflow-hidden">
  <div class="bg-gray-50 px-6 py-4 border-b border-gray-200">
    <div class="flex items-center justify-between">
      <h2 class="text-lg font-semibold text-gray-900 font-mono">
        2026-08-22
      </h2>
    </div>
  </div>

  <div class="px-6 py-4 text-gray-700 leading-relaxed space-y-4">

        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Saved videos are narrated like everything else</h2>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">What&#39;s New</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li><strong>Videos are narrated</strong>: audio for a saved YouTube video is generated from its transcript instead of playing the video&#39;s original track, so a video sounds like the rest of your library.</li>
        </ul>
        <h2 class="text-xl font-semibold text-gray-900 mt-6 mb-3">Fixes</h2>
        <ul class="list-disc list-inside space-y-1 ml-4">
            <li>Items with no generated audio no longer appear in the list you choose feed episodes from, so you cannot add an episode that will never play.</li>
        </ul>
  </div>
</article>

</template></turbo-stream>
<turbo-stream action="replace" target="changelog-pagination"><template>
  <div id="changelog-pagination" class="mt-8 text-center">
      <a class="inline-flex items-center gap-1.5 text-sm font-medium text-gray-600 hover:text-gray-900 transition-colors" data-turbo-stream="true" href="/changelog.turbo_stream?page=3">
        <svg xmlns="http://www.w3.org/2000/svg" class="h-4 w-4" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2">
          <path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7" />
        </svg>
        Load more
</a>  </div>
</template></turbo-stream>