Vou compartilhar minha experiência relacionada a esse problema. Espero que ajude alguém que estaria na mesma situação.
Estávamos trabalhando em uma instância faseada, tudo estava pronto para a produção. Então, duplicamos tudo no ambiente de produção e lançamos alguns truncados do SQL para excluir todos os pedidos fictícios, análises, etc. você entendeu.
Após alguns testes finais, percebemos que nossos produtos "quantidade de estoque" eram muito diferentes do produto "quantidade vendável" . O SQL View parecia funcionar bem, então investigamos mais profundamente. Acontece que perdemos uma tabela SQL em nossas instruções truncadas:
TRUNCATE TABLE `inventory_reservation`;
Essa garota má estava contendo cada "produtos não enviados, mas reservados " de pedidos anteriores.
Claro que não se esqueça de reindexar coisas:
bin/magento indexer:reindex;