Skip to content

v1.2.2 — Filter pre-existing entries from catchups, clean date formatting

Choose a tag to compare

@BurntDosa BurntDosa released this 13 Mar 18:30
· 9 commits to main since this release

Bug Fixes

Catchups included commits from before the user joined the repo

When generating a catchup for a developer, the system was including checkpoint entries that existed before the developer ever made their first commit. For example, if Developer A joined the repo at 22:21 and the React frontend was committed at 20:38, their catchup would say they "missed" the frontend — but it was already there when they started.

Root cause: get_checkpoints_since() returned entire checkpoint files without filtering individual entries by date. Each checkpoint file is a living document with multiple ## Commit entries, and all of them were sent to the LLM regardless of when they were created.

Fix: get_checkpoints_since() now parses each entry's ## Commit \hash` — YYYY-MM-DD` header and only returns entries dated on or after the user's last active date. Pre-existing entries are excluded before the LLM ever sees them.

Ugly raw datetime in catchup titles

Catchup headings showed the raw datetime with timezone offset: Since 2026-03-13 20:38:27+05:30. Now formatted as Since March 13, 2026.


Changes

  • storage.py — Added _filter_entries_after() to parse checkpoint files by ## Commit date headers and filter entries. get_checkpoints_since() now applies this filter before returning content.
  • main.pyprocess_catchup() formats the date with strftime("%B %d, %Y") before passing to the CatchupGenerator.