Skip to content

Resolve bounded old actor event references - #20

Merged
dajiaohuang merged 1 commit into
mainfrom
fix/actor-exact-event-refs-20260830
Aug 30, 2026
Merged

Resolve bounded old actor event references#20
dajiaohuang merged 1 commit into
mainfrom
fix/actor-exact-event-refs-20260830

Conversation

@dajiaohuang

Copy link
Copy Markdown
Contributor

Problem

Actor-centric memory projections only had recent-window and query search reads. With an empty query, a durable current_refs entry pointing to an authorized event older than the first 200 records could not be recalled, even though its stable ID was known. Reading tables directly in a domain MCP would duplicate branch, participant, ActorKnowledge-source, disclosure, and audience authority.

Solution

Add EventService.list_for_actor_event_ids, a bounded exact-reference read for 1..128 event IDs. It reuses the existing actor event authority filters, branch-visible event set, player audience projection, and participant materialization. Document the method as the supported path for durable event refs.

Verification

  • full Core pytest suite passed (348 tests collected, 2 expected skips)
  • focused regression proves a participant event older than the 200-event recent window is recalled
  • focused regression proves an ActorKnowledge source event is recalled only with permitted disclosure and an unrelated actor receives no event
  • empty and >128 request boundaries are rejected
  • ruff check src tests
  • git diff origin/main...HEAD --check

Compatibility

The new method is additive. Existing recent and search reads are unchanged; callers opt in only when they already hold stable event IDs.

@dajiaohuang
dajiaohuang merged commit 59173c2 into main Aug 30, 2026
4 checks passed
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