This release focuses on new-card creation polish, attachment handling fixes, and agent/companion reliability improvements. Commenting and file attachment now work correctly on unsaved cards, the card byline appears immediately on creation, and a "Log in" link lands on the landing page. On the agent side, agents can now be assigned to already-completed cards and follow-up complete_card calls no longer conflict. Litestream backups move to hourly, and the companion update prompt now verifies locally without browser probing.
New
- Comment on a card before it has been savedThe comment composer is available the moment a card opens, but previously
postComment()bailed silently when the card had no id yet. Comments written during creation now queue locally, the composer clears immediately, and the queue is flushed (oldest-first) once the card is saved — the tile lands on the board already showing its thread count.4ceda808c7e306 - Landing page gains a "Sign in" link in the top barThe marketing home had no visible path back in for returning visitors — only the hero's "Start free" CTA. A right-aligned "Sign in" button now appears in the top bar, reusing the shared
AppHeaderBarcomponent and consistent label used across the rest of the product.0f7c770f05fb41
Improved
- Agents can be assigned to already-completed cardsThree status gates previously blocked handing off a card to an agent once it was completed. Those gates now accept both
ACTIVEandCOMPLETEDstatuses (using the sharedRUNNABLE_NOTE_STATUSESconstant), while deleted and archived cards remain rejected. No client change is needed.fceb904
Fixed
- New card header shows the byline immediately, not a blank bandThe byline row was populated only from the saved database row, so every card being created showed an empty band above the title. The author and timestamp are now filled in optimistically from the current user and the current time, matching what the saved card will show a moment later.
41b1bc0ae09746 - Attached image stays visible while a new card savesWhen saving a new card with an image attached, the pending file list was cleared before the upload was sent, causing the image to visibly disappear mid-save. The pending thumbnail is now cleared only once the upload resolves, and anything dropped while the request is in flight remains pending. The remove button is also disabled during the upload so a click can no longer silently undo the attachment.
ac96c83466dc33 - Close the image lightbox by clicking outside the attachmentTapping or clicking outside the lightbox overlay now dismisses the image preview, and touch gestures within the preview are preserved so pinch-to-zoom and swipe still work as expected.
f8a00b3ab5dbd7 - Follow-up
complete_cardcalls on an already-completed card no longer conflictA secondcomplete_cardaction on a card that was already completed previously threw a conflict, rolled back the transaction, and stranded the run and job. A repeat completion now succeeds idempotently —completed_at,completed_by, andversionare left untouched — and correctly reports the original completer rather than the acting agent's username.687d5883b3c02f