Welcome to the TensorFlow.js community! That is a great question   So in the web world on the server side you can set in the header of the http response when you deliver the file how long to cache for and the rules for caching.
When the file changes on the server side the browser can see that the file has changed (without the need to download the whole file to check) and invalidate the local cached copy to force a new download. Some resources are available here on this topic if of interest:

  
      

      developer.mozilla.org
  

  
    

Cache-Control - HTTP | MDN 1

  The Cache-Control HTTP header holds directives (instructions) for caching in both requests and responses. A given directive in a request does not mean the same directive should be in the response.


  

  
    
    
  

  


And then also ETag:
  
      

      developer.mozilla.org
  

  
    

ETag - HTTP | MDN 1

  The ETag HTTP response header is an identifier for a
  specific version of a resource. It lets caches be more efficient and save bandwidth, as
  a web server does not need to resend a full response if the content has not changed.
  Additionally,...


  

  
    
    
  

  


A more friendly read of the above can be found here:

  

      Medium – 25 Jul 17
  

  
    

A Web Developer’s Guide to Browser Caching 2

  Overview

  
    Reading time: 7 min read
  

  

  
    
    
  

  


Along with this write up:

  
      

      jakearchibald.com
  

  
    

Caching best practices & max-age gotchas 1

  How to get the most out of caching without nasty race conditions


  

  
    
    
  

  


That being said, TensorFlow.js will use the browser cache detailed above (not local storage) unless you forcefully use the API to save the model to local storage I believe, and if you use local storage it is up to you to resave new files if you find new versions are available. The save API is here:

  
      

      js.tensorflow.org
  

  
    

TensorFlow.js 6

  A WebGL accelerated, browser based JavaScript library for training and deploying ML models


  

  
    
    
  

  


Hope that helps!