From what I understand, the steps of a key exchange protocol are
Alice and Bob each encrypt something using their public key and private key and send the result to each other
Alice and Bob each do some mechanism with their private key and the result sent by the other
They should agree on the secret.
Key encapsulation is
Alice generates a secret key and public key and sends the public key to Bob.
Bob generates his own secret key and encrypts it using Alice's public key. He sends the result to Alice.
Alice decrypts the result using her private key and ends up with Bob's key.
Is this correct and if not, could someone clarify which parts I am misunderstanding or missing?
Looking at the Known Answer Tests for NIST PQC KEM Submissions, when a seed is provided, each algorithm returns the secret key, public key, cipher text, and shared secret.
Is the shared secret Bob's private key and the cipher text what Bob sent to Alice? If not, how does the terminology work? How can the seed guarantee the correct public/secret key generation?