Hi,
Yes, I noticed that when I run SiteInst.routeSite() on a certain site, it throws a RuntimeException with the error that it is unable to route a net in the site I provided. However, SiteInst.routeSite() is only failing because of one net within the site. I realized this when I commented out that net throughout my code and SiteInst.routeSite() was able to route all other nets in the site perfectly fine. However, because I wanted to include this one net, I needed to more manually route the entire site, using SiteInst.routeIntraSiteNet, which I found a bit tedious to give the BELPins of the source/sink of all the other nets when I knew that RapidWright was capable of doing everything automatically for those nets. For the "problematic net," I had to explicitly give the routing BELs it went through when using SiteInst.routeIntraSiteNet, but this was expected. I think being able to route a single net inside of a site automatically would be useful in this case since it could avoid having to deal with the BELPins explicitly for every net in the site.
As for the "problematic net" itself, I assumed that it exhibited this behavior due to the "special cases" mentioned in
https://www.rapidwright.io/docs/Implementation_Basics.html#routing. I noticed that this net had to go through two routing BELs, as opposed to the one that the other nets went through. Other than this, there did not seem to be anything particularly special about it, just routing from the output of a flip flop to an OBUF. My main use case was to avoid having to more manually route for the other unproblematic nets when SiteInst.routeSite() fails but only due to a relatively small number of nets.
Thanks,
Laura