Skip to content

Fix AppInfo cache and process-generation lifetime races - #16

Merged
4i7 merged 16 commits into
mainfrom
fix/appinfo-cache-process-lifetime
Aug 21, 2026
Merged

4i7 merged 16 commits into
mainfrom
fix/appinfo-cache-process-lifetime

Conversation

@4i7

@4i7 4i7 commented Aug 21, 2026

Copy link
Copy Markdown
Owner

Implements the AppInfo cache / Process lifetime detailed design.

Key changes:

  • replace tracked Lazy<IAppInfo> with exact-identity Lazy<ProcessAppInfoEntry> cache entries
  • add rich watcher status/generation leases and exact ProcessWatcherData unregister semantics
  • publish watchers only after EnableRaisingEvents succeeds
  • latch pre-publication exits and classify enable failure with a detached-handler silent probe
  • validate candidate and winner generations before callback transfer
  • add deterministic seams and AppInfo cache/process-generation regression coverage (Tests A-K)
  • preserve regeneration through optimizer stage 10 and stage-15 lifecycle finalization
  • gate validate/apply/release/upstream-regeneration workflows on the new lifetime test

Design basis: MyMix_AppInfo_Cache_Detailed_Design.md.

@4i7
4i7 merged commit c112db0 into main Aug 21, 2026
2 checks passed
@4i7
4i7 deleted the fix/appinfo-cache-process-lifetime branch August 21, 2026 16:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant