Skip to content

Stability: The Poison-Pill Register #128

Description

@netanelC

Description

Implement the Poison-Pill Register within the RolloutStateMachine. Wrap the user's onChange callback execution in an error boundary. If the application-level callback throws an error while attempting to reconcile state with the new configuration, the SDK must permanently cache that specific ETag in memory. The state machine must update its internal tracking pointer to this failed ETag so that the continuous polling loop resumes but never attempts to apply that specific faulty configuration version again.

Acceptance criteria

  • Throwing an error inside the provided onChange callback adds the incoming ETag to the internal Poison-Pill Register.

  • The SDK does not enter a rapid-fire crash-loop if onChange fails.

  • Subsequent polling intervals correctly ignore the quarantined ETag.

Blocked by: #125

User stories covered: 6

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions