Closed
Description
Description
If an app developer registers an IInstanceProcessor
as Transient
, we should always instantiate it transiently (not accidentally make it a singleton by rooting it in some other service). Ideally we would not have to, but this is the least surprising behavior as app devs typically aren't concerned with what they put in constructors (ref the IHttpContextAccessor
leak incident).
We should develop tests that ensure that all (commonly implemented) public interfaces live for the expected duration.
Additional Information
No response
Tasks
- Get a list of common user-implementable interfaces which we should develop lifetime tests for
- Implement tests
Acceptance Criterias
- When
IInstantiationProcessor
services are registrered asTransient
, they are instantiated with each invocation ofIProcessEventHandlerDelegator
(or downstream services/deps) methods - The above criteria should be true for any other user implemented interface
Metadata
Metadata
Assignees
Type
Projects
Status
✅ Done