--[[ verify_push.luau -- verify a push by INSPECTING THE DATAMODEL, not by trusting push_module.py's self-report. push_module.py reported "assembled=39591 expected=39591 match=true" while the live module was in fact 30631 bytes with no _buildForDiag. That check only proves the script reassembled its own chunks correctly client-side; it does not prove the DataModel accepted the write. This closes that gap. Reports, for every CarManager in ServerScriptService: * instance count (must be 1 -- diagnostic clones caused duplicates) * Source length vs the expected 39591 * presence of marker strings that only exist in the new source * the module's exported key set after a fresh require ]] local ServerScriptService = game:GetService("ServerScriptService") local EXPECTED_LEN = 41650 local MARKERS = { "SHELL_YAW_OVERRIDE", "bestVol", "_buildForDiag", } local out = {} local function log(...) local parts = {} for i = 1, select("#", ...) do parts[#parts + 1] = tostring((select(i, ...))) end table.insert(out, table.concat(parts, " ")) end local mods = {} for _, d in ipairs(ServerScriptService:GetDescendants()) do if d:IsA("ModuleScript") and d.Name == "CarManager" then mods[#mods + 1] = d end end log(string.format("CarManager instances: %d %s", #mods, #mods == 1 and "OK" or "*** should be exactly 1 ***")) for i, m in ipairs(mods) do local src = nil pcall(function() src = m.Source end) if not src then log(string.format(" [%d] %s ", i, m:GetFullName())) else log(string.format(" [%d] %s", i, m:GetFullName())) log( string.format( " length %d vs expected %d %s", #src, EXPECTED_LEN, #src == EXPECTED_LEN and "MATCH" or "*** STALE / MISMATCH ***" ) ) for _, mk in ipairs(MARKERS) do log(string.format(" marker %-26s %s", mk, src:find(mk, 1, true) and "present" or "*** MISSING ***")) end end end if #mods == 1 then log("") local ok, mod = pcall(require, mods[1]) if ok and typeof(mod) == "table" then local keys = {} for k in pairs(mod) do keys[#keys + 1] = tostring(k) end table.sort(keys) log("require() keys: " .. table.concat(keys, ", ")) log( "_buildForDiag: " .. typeof(mod._buildForDiag) .. ( typeof(mod._buildForDiag) == "function" and " <- new source IS live" or " <- STILL RUNNING OLD CODE (require cache from Play start)" ) ) else log("require failed: " .. tostring(mod)) end end return table.concat(out, "\n")