Hi @marsxr,
I am sorry that you have this issue on Windows.
Thanks for the detailed steps, I can reproduce on Windows 10. This will help track down the issue.
> npx truffle migrate
Compiling your contracts...
===========================
√ Fetching solc version list from solc-bin. Attempt #1
> Everything is up to date, there is nothing to compile.
...
2_breaking_migration.js
=======================
Error: Artifacts are from different compiler runs
Run a full recompilation using `truffle compile --all`
https://zpl.in/upgrades/truffle-recompile-all
at reconstructSolcInputOutput (C:\Users\andre\projects\mars\node_modules\@openzeppelin\truffle-upgrades\src\validate.ts:72:15)
at Object.validateArtifacts (C:\Users\andre\projects\mars\node_modules\@openzeppelin\truffle-upgrades\src\validate.ts:20:29)
Truffle v5.1.49 (core: 5.1.49)
Node v10.16.3
> npx truffle version
Truffle v5.1.49 (core: 5.1.49)
Solidity - ^0.6.0 (solc-js)
Node v10.16.3
Web3.js v1.2.1
I recommend using Windows Subsystem for Linux (WSL) for smart contract development: Solidity Smart Contract development on Windows
I wasn’t able to reproduce on WSL2.