decodeStatus() logs a warning but falls back to returning 'Valid' when it can't recognize the on-chain status tag. Since the decoded value gets persisted straight into the DB status column, a decoding failure (e.g. an SDK/contract version mismatch) would incorrectly mark a ticket as valid for gate entry instead of failing safe.
Suggested fix: Throw an error instead of defaulting to 'Valid' when the tag is unrecognized, so callers handle the failure explicitly rather than silently trusting an unknown status.
decodeStatus()logs a warning but falls back to returning'Valid'when it can't recognize the on-chain status tag. Since the decoded value gets persisted straight into the DBstatuscolumn, a decoding failure (e.g. an SDK/contract version mismatch) would incorrectly mark a ticket as valid for gate entry instead of failing safe.Suggested fix: Throw an error instead of defaulting to
'Valid'when the tag is unrecognized, so callers handle the failure explicitly rather than silently trusting an unknown status.