summaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* openjfx: ship native libraries so the desktop UI can launch on WindowsKostya2026-08-231-1/+5
| | | | | | | | | | | | | | | | lib/openjfx held only the JavaFX API jars, with no Prism/Glass native libraries backing them. At startup JavaFX tried the d3d then sw rendering pipelines and both failed to load, since NativeLibLoader had no native code to find, crashing before any window opened. Bump the jars to 25.0.4 to match the target JDK and add the matching native DLLs alongside them. Drop the web/media/swt/swing jars and their natives (including the 92MB jfxwebkit.dll) since ui-desktop never references those modules. Update package.sh to also stage *.dll files when copying runtime libs into build/dist, and point java.library.path at lib/openjfx in the generated run-*.bat so the natives are found at launch.
* model: relocate market DTOs out of the flat api packageKostya2026-08-232-35/+67
| | | | | | | | | | | | | | | | | | Move AccountDTO/MarketDTO/MarketStateDTO/PurchaseReceiptDTO/TradeRowDTO out of the catch-all api package into model.market (and LedgerDTO into model.ledger), matching the existing model.event convention so DTOs live next to the domain they describe rather than in the interface package. Relocate LedgerMapper from mapper.v2 to infrastructure.adapter to match the module's established package layout, and update all call sites and imports accordingly. Also register the ui-desktop module in the build tooling: add it to MODULES, add openjfx to the shipped runtime libs, and generalize package.sh so each executable module (ui-console, ui-desktop) gets its own Main-Class/Class-Path manifest and run script instead of special-casing ui-console. Fold long Class-Path manifest lines at 72 bytes per the JAR spec, since adding ui-desktop's dependencies pushed the line past the limit.
* Add MapStruct LedgerMapper and wire annotation processing into build.shKostya2026-08-201-2/+3
| | | | | build.sh now passes -processorpath/-s so MapStruct's generated impl compiles alongside hand-written sources.
* Add JaCoCo coverage reporting to test.shKostya2026-08-202-2/+20
| | | | | | Vendor jacocoagent.jar/jacococli.jar under lib/jacoco/ (excluded from the shipped classpath), attach the agent during test runs, and generate an HTML+XML report into build/coverage after tests pass.
* Break down purchase receipts by cost/commission, harden XML validation and ↵Kostya2026-08-182-1/+8
| | | | | | | | | state I/O Adds a full pre-load validation pass for GM XML seeds (ids, names, options, commission, LMSR liquidity), replaces IO.print with System.out, and surfaces detailed error messages across load/save commands instead of generic failures.
* Add XML schema validation, split build scripts by module, rename ↵Kostya2026-08-187-154/+192
| | | | | | | | | BuyMenuCommand to PlaceOrderMenuCommand Introduces XMLValidatorV1 and deserializer/adapter classes for events, ledgers, markets, users, and trading mechanisms. Replaces the monolithic build.bat/run.sh scripts with per-module tools (_util.sh, build.sh, package.sh, test.sh) that compile in dependency order.
* wireframeKostya2026-08-064-0/+161