Deep Space (Platform)Aug 14, 2026

What Got Shipped Today - 14/8/26 - Site Photos, subbie self-service, & much more...

14 August 2026 Features Site Photos: capture on site, filed automatically, ready three years later As a site manager, I had to complete a whole site diary entry just to drop twenty photos into the system, so I can now open DS Site, tap Site Photos, pick the project and location, and upload. The photos land in the platform inside a minute. Before. Photos were buried behind a full site diary entry. Site teams would not complete one just to record what a wall looked like on a Tuesday, so the photos never made it in, or they sat in someone's camera roll. Three years later, when a claim lands and someone needs to prove what was or was not done on a given day, the evidence is gone. After. Site Photos is a standalone form on DS Site. Project and Location Breakdown Structure are required, the rest is capture and go. The first submission creates a system folder called Site Photos under that project's documents, and every photo syncs into it from then on. Because they live in the CDE, they inherit permissions, version history, batch download and copy-to-folder for free. The Site Photos system folder, created automatically under Project Documents on the first submission from DS Site. Photos sync into it and inherit CDE permissions, versioning and batch download. In the Deep Space web app, Project Photos is a new menu item under Documentation. Thumbnail grid, newest first. Select photos, drop them into an album, share the album by link. A photo can sit in more than one album. The new Project Photos page. Thumbnail grid newest first, album chips across the top, and select-then-add-to-album. Impact. Photos become evidence rather than clutter. The site team does thirty seconds of work and the project gets a permanent, dated, location-tagged record it can defend a claim with. Nobody has to remember to file anything. Known limitations. This is v1. The album index view with covers, search and sort is still in build. Automatic feature detection across historical images, free-text search over photo metadata, and Client Portal sharing come later. Subcontractors now run their own company record As a builder, I was maintaining my subcontractors' insurance certificates, company details and worker lists on their behalf, so I can now hand that back to them and get on with building. Before. Compliance came to the builder by email. A certificate of currency arrived as a PDF attachment, someone on the builder's side keyed it in, and when it expired someone on the builder's side chased it. The subcontractor had no way to fix their own address, let alone add a new worker. Every portal user saw the same thing, so a labourer had the same view as the business owner. After. The subcontractor portal has a Company Information tab the subcontractor owns. They update their own company details, upload insurance certificates, open a certificate that is already on file and correct an expiry date that was keyed wrong. Uploading a new certificate of the same type replaces the old one, so there is one current record, not a pile. The Team tab lets a Subbie Admin add their own people. Each invite carries a role and project access. Subbie Worker gets documents, programme, action items and HSEQ, with no commercials. Subbie Admin gets the lot, including commercials and company information. Adding a team member from the subcontractor portal. Subbie Worker covers documents, programme, action items and HSEQ with no commercials. Subbie Admin adds commercials and company information. Impact. The compliance chase moves off the builder's desk and onto the party who actually holds the document. The builder still sees everything, they just stop typing it. And the owner of an electrical contracting business can see their own commercials without their apprentice seeing them too. Improvements See the budget position before you commit against a cost code As a contract administrator coding a purchase order, I could pick a cost code with zero budget behind it and not find out until reporting stage, so I can now see Revised Budget and Remaining against every code before I choose. Before. The cost code picker showed a code and a name. Nothing else. You could commit against a code with no budget at all, save the order, and only discover it at invoice or reporting stage. By then the fix is a full cost transfer. After. Every code in the picker carries its Revised Budget and Remaining, right aligned. Zero revised budget gets a neutral "No budget" marker, because an unloaded budget is normal early in a job and does not deserve a red flag. Negative Remaining renders in the Budget Register warning colour. Nothing is blocked and nothing pops up. You simply see the position before you choose. Purchase orders first, then the same component across subcontracts, subcontract variations and manual entry.Impact. The mistake stops being possible to make by accident. That is cheaper than catching it later, and far cheaper than a cost transfer. The commercial registers now fit on the screen As a commercial manager on a laptop, I opened the PO Register and could not see a single dollar figure, so I can now see the money without scrolling sideways. Before. The PO Register needed roughly 3,100 pixels of width. A 1,440 laptop gives about 1,195. Every money column sat off the right edge, and because the register has no pagination the horizontal scrollbar sat thousands of pixels below the fold. A commercial register that showed no amounts by default. Nine tables across the module carried the same hard pixel floor, so they scrolled sideways even when empty, and hiding a column clawed nothing back. After. The pixel floors are gone across every commercial table, with a guard test so they cannot creep back in. The PO Register gains the column chooser, and switching a column off now genuinely returns its width instead of letting the survivors stretch into it. Currency, Creator and Approver ship hidden by default because each repeats the same value on every row, and Project drops out once you have scoped to a project. No column was removed and no data was merged away. Every money column stays. Impact. The widest screen in the platform now opens with the numbers visible. You configure it once to how you work and it stays that way. Claims and payment schedules open in order As a contract administrator, my claims listed as 01, 07, 03, so I can now open the register and read down 01, 02, 03. Before. Registers loaded in query order and called it a day. Reference numbers appeared shuffled and claim dates jumped between months. Finding the current claim meant scanning. After. Both subcontractor claim registers, the Claims and Schedules tab and the two client-side equivalents now sort by reference on load, using a numeric collator that handles an unpadded 9 rolling over to 10. The order carries through to CSV and Excel export. Impact. The register reads the way the job runs. Payment Due and Retention Held on the claims register As a commercial manager, the register showed me what was certified but not what was actually payable, so I can now see the payable figure and the retention held without opening anything. Before. Certified value was on the register. Payment due and retention held were not, so working out what was actually going out the door meant opening the claim. After. Two columns, both labelled with the period they cover. Payment Due is the certified value less the retention withheld on that claim. Retention Held sums the records that have not been released, matching the Retentions tab and the dashboard.---Impact. The number you need for the payment run is on the row. Retention and paid-to-date on client progress claims As a commercial manager, I could see what I had claimed from the client but not what they had actually paid or what they were holding, so I can now see both on the same screen. Before. The card row on Progress Claims (to client) covered claimed and certified. Retention held and cash actually received lived elsewhere. Impact. Client-side cash position on one screen, without a spreadsheet. Purchase orders can only be deleted while they are drafts As a commercial manager, anyone could delete an approved purchase order, so I can now be confident that an approved commitment leaves an audit trail when it goes away. Before. The delete bin sat on every row of the PO Register, approved or not. An approved purchase order carries committed cost, and deleting one made that commitment disappear with no record of it having existed. After. Delete is available on a draft purchase order and disabled everywhere else, with a tooltip pointing you to Cancel instead. Cancelling releases the committed cost and leaves the order and its history in place.Impact. Committed cost stops evaporating. There is a right way to unwind an order and it is now the only way. The client directory stops minting same-name twins As an estimator quick-creating a client from an opportunity, I could create a second identical client without knowing the first existed, so I now get told before it happens. Before. Quick-create would happily produce a second client with a name identical to one already on file. In every client selector they render as identical rows, so which one you pick is a coin flip. Each carries its own Xero contact mapping and engagement history, so picking the wrong twin quietly splits one client's commercial history across two records. After. Quick-create and the full directory form run a normalised name check first. On a match you get the existing entry with its identifier and creation date, and a choice: use the existing one, or create anyway. Use existing is the default. Selectors that previously showed a bare name now carry the identifier line the tender and head contract selectors already had. Impact. One client, one record, one commercial history. Fixes Adding a received bid to a QTO estimate no longer fails As an estimator pulling a received bid into a takeoff, I hit "Failed to add item" with no explanation, so I can now add the bid. Before. Add New Item, Subcontractor tab, pick a received bid, click Add, and it failed. The form was showing a valid budget category derived from the cost code you picked, but the submit was reading the category from the bid package instead. If the package had none, an empty value went to the server and the request was rejected. The screen looked correct, which made the failure inexplicable. After. Submit reads the same budget category the form displays, derived from the selected cost code. If nothing resolves, you get an inline message on the field telling you to pick a cost code that carries a budget category, rather than a server error and a toast. The QTO Add New Item form. Where no budget category resolves, the field says so inline instead of failing on submit with an unexplained error. Impact. A live estimating session no longer stops dead on a bid you can see is valid. The notification prompt no longer swallows Save As anyone editing project settings, I clicked Save Changes and nothing happened, so I now get a save that actually fires. Before. The "Stay in the loop" browser notification card sits bottom right. So does Save Changes on Project Settings, and the footer buttons on several modals. The card sat on top. Clicks aimed at the button landed on the card instead, with no error and no feedback. Save simply appeared broken. Dismissing the card made the identical click work immediately. After. The prompt can no longer cover a page action. Your click reaches the button. Impact. A silent failure on one of the most-used buttons in the platform, gone. Workspace logos sized correctly in notice emails As a contract administrator issuing an RFI, my company logo filled the recipient's entire reading pane and pushed the notice off screen, so my notices now arrive readable. Before. The notice email template constrained the workspace logo with CSS only. Outlook for Windows renders through Word's engine, which implements neither of the properties used, so the logo rendered at its original size. Of the thirty-five workspaces carrying a logo, twenty were oversized. The worst was 23,878 pixels wide and 3.2MB, fetched on every notice email, opening the message to a blank screen. After. The template now emits explicit width and height alongside the CSS, computed from the image's real dimensions and scaled into the available space. Reading those dimensions costs a single 64KB range request rather than downloading the whole image. If the measurement fails for any reason it falls back to the previous markup, because issuing a notice must never fail over a logo. Impact. Notices land looking like your company sent them, in every email client, whatever you uploaded. Known limitations. The email card container still collapses in Outlook for Windows, and recipient rows in the "Issued to" block can misalign. Both are separate fixes. Proposals go out clean As an estimator sending a proposal, the PDF had money columns that did not line up, an internal section the client should never see, and a raw variable name in the email, so I can now send it without checking it first. Before. Proposal PDF amounts were left aligned and the subtotal was cut off. An internal source section sat at the top of customer-facing output. And proposal emails intermittently went out with an unresolved variable showing in place of the button link. After. Amounts are aligned and the subtotal displays. The internal section is gone from customer-facing output, group headers appear only when there are real groups, and long labels truncate rather than overflow. The email variable is resolved in the correct service, with a fallback that clears and logs any unresolved variable rather than sending it to a client. Impact. The document a client receives is the document you meant to send. Head contract payment schedules show the real retention As a commercial manager certifying a head contract claim, the retention on the payment schedule did not match the claim, so the numbers now agree. Before. Where the certified value equalled the claimed value, the payment schedule still showed a different retention figure, assuming a value rather than reading the configured position. After. The payment schedule shows the final retention.Impact. Certified value and payment schedule tell the same story, so the certificate does not have to be explained. Have something you want to see next, or something that is still getting in your way? Send it through the feedback portal in the platform. We read everything, and a fair share of what shipped above started there.

How do you feel about this update?

Tap a face to rate