Skip to content

Commit 81cdb2d

Browse files
committed
fix(logging): mark system-level Invalid* errors as NotifiableError
InvalidApiKey, InvalidReceipt, InvalidPushToken, and other Invalid* errors that aren't user-input-driven are system failures and should trigger Slack notifications via Bugsnag. Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
1 parent 3ca1e35 commit 81cdb2d

2 files changed

Lines changed: 7 additions & 7 deletions

File tree

  • services
    • flipcash/src/main/kotlin/com/flipcash/services/models
    • opencode/src/main/kotlin/com/getcode/opencode/model/core/errors

services/flipcash/src/main/kotlin/com/flipcash/services/models/Errors.kt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -38,16 +38,16 @@ sealed class PurchaseAckError(
3838
) : CodeServerError(message, cause) {
3939
class Unrecognized : PurchaseAckError("Unrecognized"), NotifiableError
4040
class Denied : PurchaseAckError("Denied")
41-
class InvalidReceipt: PurchaseAckError("Invalid receipt")
42-
class InvalidMetadata: PurchaseAckError("Invalid metadata")
41+
class InvalidReceipt: PurchaseAckError("Invalid receipt"), NotifiableError
42+
class InvalidMetadata: PurchaseAckError("Invalid metadata"), NotifiableError
4343
data class Other(override val cause: Throwable? = null) : PurchaseAckError(message = cause?.message, cause = cause), NotifiableError
4444
}
4545

4646
sealed class AddTokenError(
4747
override val message: String? = null,
4848
override val cause: Throwable? = null
4949
) : CodeServerError(message, cause) {
50-
class InvalidPushToken : AddTokenError("Invalid push token")
50+
class InvalidPushToken : AddTokenError("Invalid push token"), NotifiableError
5151
class Unrecognized : AddTokenError("Unrecognized"), NotifiableError
5252
data class Other(override val cause: Throwable? = null) : AddTokenError(message = cause?.message, cause = cause), NotifiableError
5353
}
@@ -138,8 +138,8 @@ sealed class GetJwtError(
138138
override val cause: Throwable? = null
139139
): CodeServerError(message, cause) {
140140
class Denied: GetJwtError("Denied")
141-
class UnsupportedProvider: GetJwtError("Unsupported provider")
142-
class InvalidApiKey: GetJwtError("Invalid api key")
141+
class UnsupportedProvider: GetJwtError("Unsupported provider"), NotifiableError
142+
class InvalidApiKey: GetJwtError("Invalid api key"), NotifiableError
143143
class PhoneVerificationRequired: GetJwtError("Phone verification required")
144144
class EmailVerificationRequired: GetJwtError("Email verification required")
145145
class Unrecognized : GetJwtError("Unrecognized"), NotifiableError
@@ -197,7 +197,7 @@ sealed class LinkSocialAccountError(
197197
override val message: String? = null,
198198
override val cause: Throwable? = null
199199
): CodeServerError(message, cause) {
200-
class InvalidLinkingToken: LinkSocialAccountError("Invalid linking token")
200+
class InvalidLinkingToken: LinkSocialAccountError("Invalid linking token"), NotifiableError
201201
class ExistingLink: LinkSocialAccountError("Existing link")
202202
class Denied: LinkSocialAccountError("Denied")
203203
class Unrecognized : LinkSocialAccountError("Unrecognized"), NotifiableError

services/opencode/src/main/kotlin/com/getcode/opencode/model/core/errors/Errors.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ sealed class LinkAccountsError(
4242
/**
4343
* An account being linked is not valid
4444
*/
45-
class InvalidAccount : LinkAccountsError("Invalid account")
45+
class InvalidAccount : LinkAccountsError("Invalid account"), NotifiableError
4646
class Unrecognized : LinkAccountsError("Unrecognized"), NotifiableError
4747
data class Other(override val cause: Throwable? = null) : LinkAccountsError(message = cause?.message, cause = cause), NotifiableError
4848
}

0 commit comments

Comments
 (0)