Commit Graph

3 Commits

Author SHA1 Message Date
HAL9000 f7901c404f fix(actor): move namespace filter inside lock in ActorLoader.list_actors
Fixes a race condition (TOCTOU) in ActorLoader.list_actors() where the namespace
filter was applied outside the threading lock, creating a window for concurrent
dictionary modifications. Moving the filter inside the with self._lock: block
ensures atomic reads and filtering.

- Move namespace filtering inside the RLock in list_actors()
- Add concurrency BDD test (threading.Barrier) for list_actors + clear race condition
- Update CHANGELOG.md with fix entry (closes #8588)
- Update CONTRIBUTORS.md with contribution details

ISSUES CLOSED: #8588
2026-06-02 04:52:51 -04:00
brent.edwards aefcc74d76 fix(test): resolve AmbiguousStep collision after master merge
CI / benchmark-publish (pull_request) Has been skipped
CI / lint (pull_request) Successful in 15s
CI / quality (pull_request) Successful in 18s
CI / build (pull_request) Successful in 16s
CI / security (pull_request) Successful in 42s
CI / typecheck (pull_request) Successful in 44s
CI / integration_tests (pull_request) Successful in 2m57s
CI / unit_tests (pull_request) Successful in 5m9s
CI / docker (pull_request) Successful in 43s
CI / benchmark-regression (pull_request) Successful in 14m0s
CI / coverage (pull_request) Successful in 14m9s
Renamed 'listing actors with namespace' step in actor_loading_steps.py
to 'listing loaded actors with namespace' to avoid collision with
actor_registry_persistence_steps.py from master. Updated
actor_loading.feature to use renamed step.
2026-02-20 20:24:10 +00:00
aditya ef4ba36779 feat(actor): add actor registry and loader 2026-02-19 11:29:34 +00:00