Skip to content

Release 0.113.1#907

Merged
tudddorrr merged 11 commits intomainfrom
develop
Mar 28, 2026
Merged

Release 0.113.1#907
tudddorrr merged 11 commits intomainfrom
develop

Conversation

@tudddorrr
Copy link
Copy Markdown
Collaborator

No description provided.

dependabot bot and others added 11 commits March 27, 2026 14:03
Bumps  and [brace-expansion](https://github.com/juliangruber/brace-expansion). These dependencies needed to be updated together.

Updates `brace-expansion` from 5.0.3 to 5.0.5
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](juliangruber/brace-expansion@v5.0.3...v5.0.5)

Updates `brace-expansion` from 2.0.2 to 2.0.3
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](juliangruber/brace-expansion@v5.0.3...v5.0.5)

Updates `brace-expansion` from 1.1.12 to 1.1.13
- [Release notes](https://github.com/juliangruber/brace-expansion/releases)
- [Commits](juliangruber/brace-expansion@v5.0.3...v5.0.5)

---
updated-dependencies:
- dependency-name: brace-expansion
  dependency-version: 5.0.5
  dependency-type: indirect
- dependency-name: brace-expansion
  dependency-version: 2.0.3
  dependency-type: indirect
- dependency-name: brace-expansion
  dependency-version: 1.1.13
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Add index to failed job failed_at
Ensure player isn't created without auth
@tudddorrr tudddorrr added the release This pull request contains a release label Mar 28, 2026
@claude
Copy link
Copy Markdown

claude bot commented Mar 28, 2026

PR Review: Release 0.113.1

The transaction wrapping in register.ts is well-executed. The fix correctly prevents orphaned players on session creation failure, moves email validation before any DB work, and hashes the password outside the transaction (avoids holding a DB connection during CPU-bound work). The createPlayerAuthActivity receiving the trx EM is a subtle but important correctness fix that ensures the activity is rolled back on failure.


2. Potential Bugs

minor: down() migration may not fully revert user_recovery_code FK

In SchemaSnapshotChanges.down() the FK is restored as on update no action on delete cascade. The old entity was @ManyToOne(() => User) with no deleteRule, which MikroORM defaults to on delete no action. A rollback would leave cascade-delete behavior intact. The down() appears to have updateRule and deleteRule inverted relative to the original state.


5. Test Coverage

minor: no test verifying error propagation through the transaction callback

PlayerCreationError and PricingPlanLimitError are now thrown inside em.transactional() via ctx.throw(). There is no new test confirming the expected 4xx status is still returned (not a 500) when an error is thrown from inside the transaction callback. Given this is a structural change to how errors escape the handler, a test similar to the new orphaned-player test would add confidence.


1, 3, 4. Code Quality / Performance / Security

No issues found. The @Index() addition on failed_at, cascade-delete rule on UserRecoveryCode, and the timeout bumps to 2s are all clean improvements.

@tudddorrr tudddorrr merged commit cb882cc into main Mar 28, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release This pull request contains a release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant