What's new

Release notes

Every update to TriArch. Pick a release to see what changed.

September 30, 2026

v2026.9.29.2136

โœจ New

Set up a new tenant from one page
Administration now has a single Tenant setup page. It brings together baseline packs, your own data imports and the removable demo set. You can import your parts catalog from an Excel workbook. Choose a file, validate it, review what would change, and then import. Nothing is written if the check finds a problem. You can download a list of issues as a CSV and a blank template to start from. A recent-runs log shows what was validated or imported and when.

Preview a pricing rule before applying it
On a bill of materials, you can pick a pricing rule in the job pricing panel and see the resulting material total first. Your existing lines stay untouched until you apply it.

Starters for each trade
TriArch now provides one ready-made starter template for each trade: fire alarm, sprinkler, low voltage, security, mass notification and fire pump. New templates start in two steps. First choose a TriArch starter or copy an existing template. Then pick which one.

Bring back retired templates
You can reactivate a retired estimating template. If another template of the same trade has taken its name in the meantime, you'll be told.

Multi-trade projects are awarded as one bid
Marking a project awarded or lost now covers every trade with a submitted bid. The awarded value is their sum, and each quote's recipients are told the result. Project Detail shows the combined value of the latest quotes when more than one trade is quoted. Dashboards and the Projects value tile also total the trades.

Bonded bids need a bid bond before submitting
You can't submit a bonded bid until a bid bond is on file. The Submit stage tells you what's missing.

Delete several vendors at once
The vendor list now has checkboxes and bulk delete. It also has a Delete action on each row.

๐Ÿ’ช Improvements

Estimating template page redesigned
The page has a new layout. Estimation rule panels look and behave alike. There's a panel for adding default BOM categories, and price options are set up in a panel for Turnkey or Parts & Smarts. Saving default BOM categories no longer reloads the page. The pricing panel shows its categories as badges, and the rule summary banner is clearer. A new template gets a name suggested for you. Check & publish opens in a side panel instead of a new page and saves your pending edits first. If it can't, it says why.

Stages update in place
Estimate, BOM Review, Approval and Submit now refresh on the same screen after you make a change, instead of reloading the whole page. Your typed edits on Submit are kept. Stage changes such as Lock, Approve BOM, Return and Submit still load the page.

Clearer Submit, Approval and labor pricing

  • The base bid names the pricing option it uses, for example "Base bid to the GC ยท Turnkey".
  • Copying the bid summary confirms on the button.
  • Approval records who returned a bid, and signature times show in your own time zone.
  • When labor pricing blocks a launch, the banner lists every missing labor category. Each one links to Labor Rates with a new rate ready for that category.

Counts on filter chips stay accurate
Counts on the filter chips refresh after searches, filter changes and deletes, instead of showing stale numbers.

Vendor prices use a proper date picker
The expiry date on vendor prices uses the same calendar as discount rules. Past dates can't be chosen for a new expiry.

Friendlier delete messages for vendors
When a vendor can't be deleted, the message names the vendors involved and says why. Either they have prices on catalog parts or their prices are still used on a bill of materials. The check happens before you confirm.

Take-off, dates and currency

  • Estimates, BOM detail and the Estimate panels show the estimate's own currency instead of "$".
  • The proposal date falls back to the project's bid-deadline time zone.
  • Approval shows the deadline as passed once its hour has gone, matching Launch Phase.
  • ITB emails with written dates such as "May 15, 2026, 2:00 PM" are now read correctly.

Search

  • Ctrl+K opens search from any field except document and rich-text editors.
  • "not" now negates only the word right after it.
  • A bare date counts as a date filter only after "due", "by" or "on".
  • A project's quote amount in search results sums the latest quote for each trade.

Contacts and bulk-select bars
The Contacts list drops its Actions column, and the selection bar is flatter and easier to read. KPI rows and filters on several pages adapt better to small screens.

Clearer permission names
The starters permission now reads "View starters". The four stage Review permissions now say they only show a Reviewer badge in My Work. Unused permissions no longer appear.

๐Ÿž Fixes

ArchAI Assistant tells you why it can't answer
Instead of a generic error, you now see whether you lack access to the project, the month's allowance is used up, or the assistant isn't set up for that jurisdiction. Questions refused because the assistant isn't set up no longer count against your monthly allowance.

Take-off quantities are kept when you save
Linear rows marked on more than one plan document keep the other documents' lengths. Counts on documents you aren't viewing are no longer overwritten. Generate BOM waits for the save, and stops with the reason if the save was refused. Autosave retries after a temporary conflict. A decimal comma such as "1,5" is no longer saved as 15.

Rounding no longer resets to $1
"Round prices to" shows the value you saved, and saving other settings no longer resets $10, $100 or no-rounding templates to $1. The trade is locked, with a hint, on templates started from a starter or copied from another, and on drafts of published templates. Trade and rounding refusals appear next to the field instead of on an error page.

Adding addenda works
Every attempt to add an addendum answered "no such entity". It now works.

Failed deletes are no longer silent
If deleting a project or bid version fails partway, you're told instead of leaving stray records behind. A drawing extraction whose final save fails is marked Failed instead of polling forever.

Alternate BOM lines no longer inflate the bid
Alternates were priced into the estimate and quote but left out of BOM totals, purchase orders and the price-expiry check. They are now consistently left out of totals everywhere.

Labor gaps check ignores alternate lines
The check no longer flags missing labor rates for alternate lines.

Toasts show in full-screen Take-Off
Notifications now appear in full-screen mode, and the page no longer clips at exactly 992px wide.

Duplicate contact and General Contractor issues from ITB intake
An ITB contact is added once per email and made primary only if the General Contractor has none.

Department access is enforced consistently
Project Detail offers Configure, Change department and Prepare drawings only to people who can work that scope. Others see a disabled control naming the department. Mark awarded and Mark lost are disabled, with the department named, if you can't work every trade with a submitted bid. Opening an estimate checks department access.

Money, search and display polish

  • Dark theme: the primary scale button keeps its outline on hover, and the job-pricing radio ring is visible.
  • A Create page restored by Back re-enables its submit button.
  • Unused lookup lists and unfinished template features are turned off so they can't change published templates.

Vendor conflicts panel
Batch rows no longer show a stray tooltip.