<feed xmlns='http://www.w3.org/2005/Atom'>
<title>npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/docs/explanation/grasp-02-proactive-sync-purgatory-git-data.md, branch v1.0.0</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/atom?h=v1.0.0</id>
<link rel='self' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/atom?h=v1.0.0'/>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/'/>
<updated>2026-02-23T14:49:30+00:00</updated>
<entry>
<title>docs: update purgatory docs to reflect announcements purgatory implementation</title>
<updated>2026-02-23T14:49:30+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-02-23T14:49:30+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=4848c4029fc58f6f310a2babeae1ee82a7e41656'/>
<id>urn:sha1:4848c4029fc58f6f310a2babeae1ee82a7e41656</id>
<content type='text'>
Remove the pre-implementation planning docs (announcements-purgatory-design.md
and announcements-purgatory-implementation.md) now that the feature is built.

Update the three living docs to reflect what was actually implemented:

- purgatory-design.md: expanded to cover all three purgatory stores
  (announcement, state, PR), including AnnouncementPurgatoryEntry structure,
  two-phase soft expiry lifecycle, expiry extension triggers, promotion flow,
  and updated integration points and file structure

- grasp-02-proactive-sync.md: added SyncLevel enum (Full/StateOnly) to
  RepoSyncNeeds, documented the purgatory announcement sync timer as the
  registration path for purgatory announcements, updated filter building
  to describe build_sync_level_aware_filters() and StateOnly behaviour

- grasp-02-proactive-sync-purgatory-git-data.md: expanded to cover
  announcement purgatory as a third entry type, added Timeline E showing
  soft-expiry and revival, replaced the single expiry section with separate
  hard-expiry (state/PR) and two-phase soft-expiry (announcements) sections
  with full justification for the 24-hour extended retention window
</content>
</entry>
<entry>
<title>docs: update docs with sync and purgatory and git data sync</title>
<updated>2026-01-08T00:26:51+00:00</updated>
<author>
<name>DanConwayDev</name>
<email>DanConwayDev@protonmail.com</email>
</author>
<published>2026-01-08T00:26:51+00:00</published>
<link rel='alternate' type='text/html' href='https://upleb.uk/npub1tkq8unhsd5jqx6ueex5lcpsgknrpquxuk44ftpjlpm3ulaake7xs76txrw/ngit-grasp-mirror/commit/?id=543d9e66dd44b70ed467c61635e6c8056fef8555'/>
<id>urn:sha1:543d9e66dd44b70ed467c61635e6c8056fef8555</id>
<content type='text'>
</content>
</entry>
</feed>
