{"record":{"id":"393f60aadfad3066","repo":"FuelLabs/fuels-ts","slug":"invalid-transaction-status","errorCode":"INVALID_TRANSACTION_STATUS","errorMessage":"Invalid transaction status: ${gqlStatus}.","messagePattern":"Invalid transaction status: (.+?)\\.","errorType":"exception","errorClass":"FuelError","httpStatus":null,"severity":"error","filePath":"packages/account/src/providers/transaction-summary/status.ts","lineNumber":35,"sourceCode":"} from './types';\n\n/** @hidden */\nexport const getTransactionStatusName = (gqlStatus: GqlTransactionStatusesNames) => {\n  switch (gqlStatus) {\n    case 'FailureStatus':\n      return TransactionStatus.failure;\n    case 'SuccessStatus':\n      return TransactionStatus.success;\n    case 'SubmittedStatus':\n      return TransactionStatus.submitted;\n    case 'SqueezedOutStatus':\n      return TransactionStatus.squeezedout;\n    case 'PreconfirmationSuccessStatus':\n      return TransactionStatus.preconfirmationSuccess;\n    case 'PreconfirmationFailureStatus':\n      return TransactionStatus.preconfirmationFailure;\n    default:\n      throw new FuelError(\n        ErrorCode.INVALID_TRANSACTION_STATUS,\n        `Invalid transaction status: ${gqlStatus}.`\n      );\n  }\n};\n\n/** @hidden */\nexport const extractResolvedOutputs = (\n  serializedOutputs?: SerializedResolvedOutput[] | null\n): ResolvedOutput[] => {\n  const resolvedOutputs: ResolvedOutput[] = [];\n  serializedOutputs?.forEach(({ utxoId, output }) =>\n    resolvedOutputs.push({\n      utxoId,\n      output: deserializeProcessedTxOutput(output) as OutputChange | OutputVariable,\n    })\n  );\n  return resolvedOutputs;","sourceCodeStart":17,"sourceCodeEnd":53,"githubUrl":"https://github.com/FuelLabs/fuels-ts/blob/b3f37c91aca4aa9d5e4c0d3967f66237190826ea/packages/account/src/providers/transaction-summary/status.ts#L17-L53","documentation":"Thrown by `getTransactionStatusName()` (transaction-summary/status.ts) when the GraphQL status string from the node does not match any known status name (FailureStatus, SuccessStatus, SubmittedStatus, SqueezedOutStatus, PreconfirmationSuccessStatus, PreconfirmationFailureStatus). The default branch prevents the summary from continuing with an undefined status enum value.","triggerScenarios":"Building a transaction summary where `gqlTransaction.status` carries a status name string not in the SDK's known set. Reached internally from `getTransactionSummary`.","commonSituations":"Node/SDK version skew: the node emits a new status type (e.g. a new preconfirmation variant) that the SDK does not recognize; network returns a malformed status string; GraphQL schema changed across versions.","solutions":["Upgrade @fuel-ts packages to align with the connected node version.","Verify the provider URL points to a compatible node.","If status is transient/unknown, poll again or fall back to a raw query."],"exampleFix":"// before\nconst status = getTransactionStatusName(gqlStatus); // throws on unknown\n// after\nconst KNOWN = ['FailureStatus','SuccessStatus','SubmittedStatus','SqueezedOutStatus','PreconfirmationSuccessStatus','PreconfirmationFailureStatus'];\nconst status = KNOWN.includes(gqlStatus) ? getTransactionStatusName(gqlStatus as any) : TransactionStatus.submitted;","handlingStrategy":"validation","validationCode":"const KNOWN_STATUS = ['FailureStatus','SuccessStatus','SubmittedStatus','SqueezedOutStatus','PreconfirmationSuccessStatus','PreconfirmationFailureStatus'];\nif (!KNOWN_STATUS.includes(gqlStatus)) throw new Error(`unknown status ${gqlStatus}`);","typeGuard":"function isKnownGqlStatus(s: unknown): boolean {\n  return typeof s === 'string' && ['FailureStatus','SuccessStatus','SubmittedStatus','SqueezedOutStatus','PreconfirmationSuccessStatus','PreconfirmationFailureStatus'].includes(s);\n}","tryCatchPattern":"null","preventionTips":["Align SDK version with the connected node so status names are recognized.","Point the provider at a compatible node.","Poll again if a transient/unknown status appears."],"tags":["transaction","status","summary","version-compat","graphql"],"backgroundTag":null,"analyzedSha":"b3f37c91aca4aa9d5e4c0d3967f66237190826ea","analyzedAt":"2026-08-12T20:30:56.448Z","schemaVersion":2},"datasetVersion":"2026-08-12T23:17:12.415Z"}