Skip to content

Provide hooks that let developers deterministically control the behavior of unsafe operators #1875

@shadaj

Description

@shadaj

Because unsafe operators are the only place where non-determinism due to asynchrony is exposed, we can write deterministic unit tests if the developer defines their behavior. For example, the boundaries of batching, or which snapshot of a singleton is revealed. We can do this with a hooks API that gives developers a type-safe handle to individual unsafe operators.

Depends on #1874

Question: what happens if an unsafe operator does not have a hook defined? Should it just execute randomly (like iteration over hash collections)?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions