Generate asset versions during Docker builds

This commit is contained in:
2026-07-30 18:37:39 -04:00
parent eec422661b
commit 1a63da77f3
23 changed files with 128 additions and 87 deletions
+1 -1
View File
@@ -1,7 +1,7 @@
// Browser-safe. Geometry for the roast-curve SVG grid (viewBox 0 0 714 334), matching
// manual-roast-planner.html's worksheet box 10 grid exactly.
import { MACHINE } from "./reference-data.js?v=20260730-release2";
import { MACHINE } from "./reference-data.js?v=__ASSET_VERSION__";
export const PLOT = { x0: 52, x1: 652, y0: 24, y1: 294, tMaxS: 900 };
+2 -2
View File
@@ -2,8 +2,8 @@
// Mirrors manual-roast-planner.html's worksheet box 6 (lines 1-9, totals A/C/D)
// and box 7 (the four sanity checks) exactly. Imported by both server and browser.
import { parseDuration, parseRangeMidpoint } from "./time.js?v=20260730-release2";
import { YELLOW_RATIO, SANITY_BANDS } from "./reference-data.js?v=20260730-release2";
import { parseDuration, parseRangeMidpoint } from "./time.js?v=__ASSET_VERSION__";
import { YELLOW_RATIO, SANITY_BANDS } from "./reference-data.js?v=__ASSET_VERSION__";
/**
* @param {import("./fields.js").Plan} plan
+1 -1
View File
@@ -2,7 +2,7 @@
// (Step 1 cultivar table, Step 3 processing table, Step 4 roast-level table, Step 8 machine bands,
// Step 7 sanity bands). Keep this the single source of truth — don't retype these numbers elsewhere.
import { parseRangeMidpoint } from "./time.js?v=20260730-release2";
import { parseRangeMidpoint } from "./time.js?v=__ASSET_VERSION__";
export const YELLOW_RATIO = 0.56;
const DEFAULT_DEV_THIRD_S = 90; // "1:30", the modal third-profile-number most cultivar rows share