st.cache_data vs st.experimental_memo: Choosing the Right Decorator for Repeatable Data Loading
Goal We want a development environment where loading a CSV file via a Streamlit decorator yields the same cached result across script restarts until the file changes. Constraint The project uses Streamlit 1.18 or newer, so both st.cache_data (stable) and st.experimental_memo (legacy) are available. The cache must survive a full app reload but be invalidated