Download Latest Version OpenConstructionERP_12.2.0_x64_en-US.msi (375.0 MB)
Email in envelope

Get an email when there's a new version of OpenConstructionERP

Home / v3.0.3
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-05-13 1.7 kB
v3.0.3 -- Deep correctness pass + UX _ supply-chain hardening source code.tar.gz 2026-05-13 242.7 MB
v3.0.3 -- Deep correctness pass + UX _ supply-chain hardening source code.zip 2026-05-13 244.7 MB
Totals: 3 Items   487.4 MB 0

FSM engine + audit log

  • 6 entity state machines (BOQ · Project · Invoice · NCR · RFQ · Submittal) with 50 declarative transitions
  • Role-restricted guards on every transition; every transition recorded in the new oe_activity_log table
  • Migration v3033 creates the audit table and remaps 11 legacy status values across 4 tables (backward-compatible, idempotent)

IFC parser correctness — silent BOQ corruption fix

  • Full IfcUnitAssignment parser per ISO 16739-1:2024 §5.4.3
  • Every SI prefix (KILO / MILLI / MICRO / …), Imperial conversion (inch / foot / yard / lb / °F), recursive IfcConversionBasedUnit, IfcDerivedUnit combinatorics
  • Per-dimension scale table applied to every IfcQuantity value — a 24-inch wall is now 0.6096 m, not raw 24
  • 92 unit-assignment regression tests

Ed25519 manifest signing for converter installer

  • SHA-256 file verification on every download; refuse-on-mismatch
  • 30 verifier tests + an emergency rotation script (scripts/rotate_manifest_signing_key.py)

UX — collapsible sidebar + WideModal sweep

  • Sidebar — toggles to 64px icon-only mode with a floating pill on the panel edge, persisted to localStorage
  • WideModal sweep — 19 files / 25 modals migrated to the shared WideModal foundation: Resources, DailyDiary, QMS, Punchlist, FieldReports, Contracts, CRM, Variations, PropertyDev, SupplierCatalogs, ChangeOrders, Tendering, Finance, Submittals, Correspondence, Contacts, RFI, Meetings, Transmittals — forms with 4-14 fields now fit at 1366×768 without scrolling

Tests

5045 passed, 1 skipped, 0 regressions, frontend tsc --noEmit clean.

Source: README.md, updated 2026-05-13