RE: External users - Licensing model
I have a case when D365 HR system is deployed in X tenant. I want to invite users from Z tenant to use the system with roles (HR assistant and Self-service).
They need licenses is my understanding, but if this is a trial/demo/initiation on a sandbox I would expect not. As Parag says best to wait for the official answer, however you can package licenses differently. Dynamics as a service is something I've seen people offer, albeit the roles and responsibilities and accountability in a relationship needs careful attention. Ultimately if someone is using a solution they need a license. Access via duel write to dataverse tables without the app? Not so sure, think this requires the full users as a minimum from memory then power platform on top, which is another approach ISVs take.
So the answer to...
'Do I need to assign the license to X tenant, or users from Z tenant could buy licenses in their tenant and I just invited theirs as Guests in AAD?'
It depends on the deployment model used, maybe one the licensing team could add clarity on in the monthly licensing updates. There are also careful considerations needed here around your user provisioning and associated azure protections, identity security, access to dataverse, etc....