1.12.4 # 前端版本 —— 覆盖 processor/web/ 下的**全部**前端代码: # # templates/ Jinja2 页面(含 base 布局与侧边栏) # static/js/ 手写脚本(老的是经典脚本;train/ 与 inference/ 是 ES module) # static/*.js|css 第三方 vendored 资源与构建产物 # workflow-studio/ React SPA 源码 # # ── 一个号,两个用途 ────────────────────────────────────────────── # # 1. 模板里的 `?v={{ asset_version }}` 缓存键 —— 读了它,改了 JS/CSS 浏览器 # 才会重新拉 # 2. 提交信息里的「前端 X」 # # ★ **改前端只 bump 这一个文件。** 两个用途共用一个数,不会出现"提交信息写 # 1.12.3、但浏览器拿的是 1.12.2"这种对不上的情况。 # # ── 和另外两个号的关系 ─────────────────────────────────────────── # # 后端号 processor/app/version.py —— 只管后端(**不再是**缓存键) # SPA 号 workflow-studio/package.json —— 只代表那个 React SPA # 三个号互相独立,不必同步。 # # ── 改完要重启 ─────────────────────────────────────────────────── # # app/web_version.py 在服务启动时读一次就缓存住(不是每请求读盘),所以 # bump 完要重启服务才生效。想让它立刻生效得改成可调用对象、模板写 # `{{ asset_version() }}` —— 那要改 22 处模板,不划算。