So far, the only parts of Web2Cit that rely on resources external to Web2Cit (i.e., excluding configuration files on Meta) are some selection steps. Namely, the Citoid selection, which relies on the Citoid response for the target webpage (i.e., the page requested to be translated), and the XPath selection, which relies on the HTTP response for the target.
However, external resources may be unavailable. For example, Citoid is known to fail for some URLs. Right now, this results in a Web2Cit-Core error, which the Web2Cit-Server handles by returning a 404 error, indicating what external resource could not be fetched. See for example https://web2cit.toolforge.org/https://www.realestate.com.au/property/123-main-st-kangaroo-point-qld-4169
A possible solution may be having Citoid and Xpath selection steps, which rely on external resources, return an empty step output ([ ]) if the external resource cannot be fetched.
Note that this solution would make the fallback template non-applicable in cases where Citoid fails, because the fallback template uses Citoid selection for all fields, and mandatory fields (i.e., always-required fields) would not accept an empty output. The Web2Cit-Server may handle this by returning a 404 error if no applicable templates were found for a given target webpage. See T305166
Also, we should consider what we want to do in cases where the target webpage does not exist (i.e., the HTTP request times out or returns a 404 error).