Skip to content

fix(workflow_engine): Fix integration_id type mismatch in action translator#108462

Merged
kcons merged 3 commits intomasterfrom
kcons/phase4
Feb 19, 2026
Merged

fix(workflow_engine): Fix integration_id type mismatch in action translator#108462
kcons merged 3 commits intomasterfrom
kcons/phase4

Conversation

@kcons
Copy link
Member

@kcons kcons commented Feb 18, 2026

The BaseActionTranslator.integration_id property was annotated as returning int | None but actually returned str | None from the action dict. Fix the property to actually return int, and add refresh_from_db() in tests so the assertion operates on DB-coerced types.
Unclear this was an actual misbehavior in prod code due to type coercion, but better to be verifiably correct.

Also, Action.Type and ActionType aren't the same, despite having identical values. Made it consistent, though
we should probably go back and consider whether we need two identical enums.

@kcons kcons requested a review from a team as a code owner February 18, 2026 18:15
@github-actions github-actions bot added the Scope: Backend Automatically applied to PRs that change backend components label Feb 18, 2026
Copy link
Contributor

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

Copy link
Member

@ceorourke ceorourke left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Combining ActionType and Action.type sounds like a good follow up 👍

@kcons kcons merged commit 1bc27db into master Feb 19, 2026
84 checks passed
@kcons kcons deleted the kcons/phase4 branch February 19, 2026 20:04
JonasBa pushed a commit that referenced this pull request Feb 19, 2026
…slator (#108462)

The BaseActionTranslator.integration_id property was annotated as
returning int | None but actually returned str | None from the action
dict. Fix the property to actually return int, and add refresh_from_db()
in tests so the assertion operates on DB-coerced types.
Unclear this was an actual misbehavior in prod code due to type
coercion, but better to be verifiably correct.

Also, Action.Type and ActionType aren't the same, despite having
identical values. Made it consistent, though
we should probably go back and consider whether we need two identical
enums.
kcons added a commit that referenced this pull request Feb 23, 2026
#108606)

strict_equality occasionally seems a bit picky, but it flags nonsense
comparisons that can be tricky to identify otherwise.
On average, it seems to make us safer and more honest without too much
cost, and this in turn makes us able to move faster.

See also:
 * #108478
 * #108466
 * #108462
 * #108450
 * #108448
 * #108578
mchen-sentry pushed a commit that referenced this pull request Feb 24, 2026
…slator (#108462)

The BaseActionTranslator.integration_id property was annotated as
returning int | None but actually returned str | None from the action
dict. Fix the property to actually return int, and add refresh_from_db()
in tests so the assertion operates on DB-coerced types.
Unclear this was an actual misbehavior in prod code due to type
coercion, but better to be verifiably correct.

Also, Action.Type and ActionType aren't the same, despite having
identical values. Made it consistent, though
we should probably go back and consider whether we need two identical
enums.
mchen-sentry pushed a commit that referenced this pull request Feb 24, 2026
#108606)

strict_equality occasionally seems a bit picky, but it flags nonsense
comparisons that can be tricky to identify otherwise.
On average, it seems to make us safer and more honest without too much
cost, and this in turn makes us able to move faster.

See also:
 * #108478
 * #108466
 * #108462
 * #108450
 * #108448
 * #108578
@github-actions github-actions bot locked and limited conversation to collaborators Mar 7, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

claude-code-assisted Scope: Backend Automatically applied to PRs that change backend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants