onCodePathEnd(path, node) {
        const funcInfo = funcInfoStack.pop()

        if (!isInlineThenFunctionExpression(node)) {
          return
        }

        if (ignoreLastCallback && isLastCallback(node)) {
          return
        }

        if (
          ignoreAssignmentVariable.length &&
          isLastCallback(node) &&
          node.body?.type === 'BlockStatement'
        ) {
          for (const statement of node.body.body) {
            if (isIgnoredAssignment(statement, ignoreAssignmentVariable)) {
              return
            }
          }
        }

        path.finalSegments.forEach((segment) => {
          const id = segment.id
          const branch = funcInfo.branchInfoMap[id]
          if (!branch.good) {
            context.report({
              messageId: 'thenShouldReturnOrThrow',
              node: branch.node,
            })
          }
        })
      }
@param {CodePath} path
@param {Node} node