Skip to content

Release on May 21, 2026

Version: 56.0.0 · Release

Areas Affected

Billing, Subcontracts, Settings, Dashboard, Observations

Highlights

  • GCs can now configure a monthly billing window per project, restricting when subcontractors are allowed to submit pay applications — with automated notifications when the window opens.
  • Org admins can now manage a full library of cost codes organized by CSI MasterFormat divisions directly from Settings, making it easier to standardize codes across projects.
  • The Billing & Cash Flow Reconciliation Dashboard now shows a Total Committed Subcontract Costs figure, giving teams an at-a-glance view of how much has been committed across active subcontracts.

What Changed

  • GCs can now set a recurring monthly billing window on a per-project basis, defining the start and end dates during which subcontractors are allowed to submit pay applications. Outside the window, subs can still create and save draft pay applications but the Submit button is blocked, with a clear message showing when the next window opens. When the window opens, all subs with active subcontracts automatically receive an email and in-app notification. Different projects can run different billing windows simultaneously, and the restriction is enforced on the server — not just in the UI. (Ticket)
  • Improved how observation records are loaded to correctly enforce role-based access. Subcontractors see observations in read-only mode (except for status and closing attachments), while office roles retain full edit access. This ensures each user sees only what they are permitted to view or change. (Ticket)
  • Backend support for org-level cost code management, enabling the new Cost Codes settings page. Supports creating, editing, deactivating, and deleting cost codes, with validation to prevent removing codes that are already in use on projects. (Ticket)
  • Org admins can now manage cost codes under Settings → Customization → Cost Codes. Codes are organized by CSI MasterFormat divisions, with a two-panel layout showing divisions on the left and their codes on the right. Admins can add new codes (with division, code, and description), deactivate codes to hide them from future use, and delete codes that have not yet been applied to any project. A global search field lets admins find codes across all divisions at once. The layout is fully responsive across device sizes. (Ticket)
  • Fixed a layout issue on the organization selection page where org cards were not displaying in the intended two-per-row grid. (Ticket)
  • A new Total Committed Subcontract Costs chip has been added to the Billing & Cash Flow Reconciliation Dashboard, positioned between Contracts Value and We Billed Owner. It displays the sum of contract values for all Active, Completed, and Pending Signature subcontracts on the project, excluding Draft and Voided. The value reflects post-change-order amounts and updates automatically after relevant changes. A tooltip explains exactly what is included in the calculation. (Ticket)

Hotfixes Since Last Release

These fixes were deployed to production independently before this release — they are listed here for a complete record of what changed since the previous release.

May 20, 2026

  • Fixed an issue with how budget sheet data was being converted, which could have caused incorrect values to appear on budget sheets. (PR)

May 18, 2026

  • Performed a targeted verification of the production deployment to confirm all services were running correctly after a recent infrastructure change. (PR)

May 17, 2026

  • Completed the infrastructure migration by removing the previous hosting configuration after confirming the new deployment was stable. (PR)
  • Enabled the new production hosting environment, completing the migration to a more reliable and scalable infrastructure for the platform. (PR)

Chores
  • field access poc (#2579) (PR)
  • Retry on slack rate limit error (#2628) (PR)
  • Sync main hotfix to qa (manual after conflict)
  • Consolidate all http clients to use resty (#2650) (PR)
  • Migrate batch repository methods to pg helper functions (#2651) (PR)
  • Fix build (#2664) (PR)
  • Add GH action to clean up stale dev preview instances (#2668) (PR)

Ernest Platform Release Notes