Deep Space (Platform)Sep 8, 2026

What Got Shipped Today - 8/9/26 - Submittals carry unregistered files, the Document Register stops seeing double, and a retention release shows its money

Tuesday 8 September 2026 Features Send a Submittal With Files That Are Not in the Register Yet User Story As a document controller assembling an approval pack, half the things the client needs to sign off were never drawings, so I can now put a fire rating certificate and a product data sheet in the same pack as the drawings and have the platform register them for me. Before A submittal could only carry documents that were already registered. A fire rating certificate or a product data sheet sitting in a folder was not a controlled document, so it could not go in the pack, and there was nowhere for a reviewer’s verdict on it to live. The workaround was to register everything by hand first, or to email the certificate separately and hope the approval came back attached to something. After Drop any file into a submittal, registered or not, mixed freely with drawings in the same pack. At issue, every loose file is registered. You confirm the metadata before it goes out, and the platform pre fills it two different ways on purpose. A drawing is read from its own title block by the same extraction the promote flow uses, because a drawing’s number is a fact already printed on it. A certificate has no inherent number, so the platform generates one from the document type prefix plus a project sequence, which is exactly what a document controller does by hand. Generated numbers are editable and warn you on a collision, because a machine invented number should not enter a controlled register unreviewed. Two things ship underneath it. A per workspace document type dictionary, a controlled list of types (certificate, product data, sample and so on) each carrying the prefix used in generated numbers, editable by an administrator. And supporting attachments, which are the opposite concept: material included for the reviewer’s reference that is explicitly not up for approval, a specification extract for instance. They are visible, they are downloadable, they are never registered, and the reviewer sees no verdict control on them at all. Impact The pack you send is now the pack the job actually needs, not the subset that happened to be registered already. A file important enough to need client approval has crossed the line into being a controlled document, and it now gets treated as one at the moment you issue it rather than weeks later when someone notices the gap. Known limitations A pack cannot be issued while any loose item still has unconfirmed metadata. That is deliberate. Registering a document with nobody having looked at its number is the failure this was built to avoid. Arrange Your Dashboard the Way You Actually Work User Story As a commercial manager, my approvals sat below three widgets I do not read, so I can now drag them to the top and have that stick. Before The user dashboard shipped with a fixed widget layout. A commercial manager wants approvals first, a site manager wants action items first, and a fixed order means one of them always scrolls past what they do not need to reach what they do. After Drag any widget into the arrangement you want, the same interaction the Tender Tracker pipeline already uses. Your layout saves against your own login and comes back next time. No page reload, no admin, no effect on anyone else’s dashboard. Impact The first screen of the day stops being a compromise between five roles. Everyone gets their own, and nobody has to ask for a layout change to be built. Widgets on the user dashboard, each with a drag handle in its top right corner. Drag them into the order you want and the layout comes back that way next time you log in. Improvements Deleting an Invoice No Longer Leaves Its Claim Behind User Story As a contract administrator who raised an invoice off the wrong claim, deleting the invoice left the claim and the payment schedule sitting there, so I can now clear the whole chain in one action. Before Deleting or reverting an invoice removed the invoice. The progress claim and the payment schedule it was generated from stayed behind, and unpicking them meant going into each register and deleting them one at a time in the right order. After Deleting or reverting an invoice asks which you want. Delete the invoice only, or delete the invoice together with the records associated with it. The choice is yours at the point of deletion, not something you discover afterwards. Impact A wrong invoice becomes a two click correction instead of a hunt through three registers. Just as importantly, the option is explicit, so nobody deletes a claim they meant to keep. Click Straight Through to the Record a Commercial Page Refers To User Story As a contract administrator reading a payment schedule, the claim and subcontract it came from were named on the page but were not links, so I can now click through instead of going back to the register and searching. Before Subcontract, progress claim, subcontract variation and payment schedule detail pages named the records they relate to as plain text. Getting to one of them meant leaving the page, opening the right register and finding it again. After Those references are hyperlinks. Click the claim named on a payment schedule and you land on the claim. Impact Following a commercial chain stops costing a navigation detour at every step, which matters most at the end of the month when you are following a lot of them. Fixes A Retention Release Carries Its Value Onto the Payment Schedule and the Invoice User Story As a commercial manager who released retention yesterday, the release showed on the claim and then read zero on every document that followed it, so I can now issue the payment schedule and the invoice without correcting them by hand. Before Retention release landed on the head contract progress claim yesterday and worked there. Every screen and document downstream of it did not, because a retention release deliberately has no schedule of values lines and those surfaces added up schedule of values lines to get their totals. So the payment schedule cover fields read zero, the A to H table printed Retention Released at zero in every column, and the invoice document printed nothing certified plus nothing released plus real GST, which is an arithmetically impossible document to send a client. The claims register showed a dash instead of a certified value on release claims, and claimed to date could miss an entire earlier claim depending on the dates involved. After One release aware total now feeds every one of those places. The payment schedule prints the released amount in its own line and reconciles. The invoice prints a Plus Retention Released row, so a total that used to look impossible now explains itself. The claims register shows the certified value on a release claim rather than a dash, and the claimed to date sequence is keyed on the claim period rather than a user editable submission date, so a release dated earlier in the month no longer knocks a later claim out of the running total. The head contract claim PDF was reading the same wrong sequence and is fixed with it. Impact A release you can see on screen is now a release you can issue. Nobody edits a generated payment schedule or invoice before it goes to the client, which is the only version of this that is safe. Known limitations Retention Held still reports a certification position rather than a cash one, because release records are written when a payment schedule is accepted. We have removed the floor that used to hide an over release, so if more has been released than was held, you can now see it. Subcontractor side release and accounting system posting for releases are separate pieces and are not in yet. Head Contract Variations Go Through Approval Again User Story As a project manager whose sign off is meant to sit between a variation and the client, submitting a variation marked it Approved on the spot, so I can now trust that nothing reaches the client without the approval it was supposed to pass through. Before Submitting a head contract variation set its status straight to Approved. The internal approval workflow never fired and no sign off was recorded on the way there, which meant a variation could reach an approved state, and by extension be issued to a client, without anyone having actually approved it. There was no workaround. Every submission bypassed it. After Submitting sets the variation to Submitted and routes it through the configured approval workflow. It only becomes Approved once that workflow completes, and the sign off is recorded. Impact The approval on a head contract variation means what the register says it means. If your delegation of authority requires a project manager to sign a variation before it goes out, that is now what happens. One Document, One Row in the Document Register User Story As a document controller, my register showed the same drawing more than once and my filters looked like they were being ignored, so I can now filter it and trust what comes back. Before A revision uploaded under a different file name split a document into two entries in the same series. Everything downstream of that split then misbehaved in ways that looked like separate bugs. The register showed duplicate rows. Filtering computed the right answer and the screen kept showing the old rows anyway, so the filters appeared not to work at all. Clicking a row could open the superseded copy with blank details, and pushing a revision from there inherited the old name, which kept the document on the wrong side of the split. Separately, the document count next to an active filter reported the unfiltered total, so with a discipline selected it still read the whole register. After One document per series, guarded at the point the data lands so every surface that reads the register benefits, not just the register tab. The filter behaviour was never wrong and now shows it. The count reads what it should, as the filtered number out of the total, so 23 of 248 rather than the whole register. Impact The register is trustworthy again as a register. Filtering a large set of drawings by discipline gives you the drawings in that discipline, the count agrees, and clicking a row opens the current file. Moving a Large Selection of Files Stops Timing Out User Story As a document controller reorganising a folder of sixty files, the move said it failed, so I retried it, and it failed again, so I can now move a large selection once and see it land. Before Moving more than about thirty eight files at once timed out. The move itself usually completed, because the platform kept working after the request had been given up on, but the screen said the move failed, left the selection and the dialog open and never refreshed the folder. So people retried, and the retry cost the same fifty seconds and failed the same way. In one case the files had already moved and the retry spent a further minute doing nothing at all. After The whole cost of the operation turned out to be that every single file in the selection opened its own new database connection. That connection is now reused across the batch, so a sixty six file move that took fifty two seconds now completes in a fraction of it, well inside the limit that was being hit. The failure message you were seeing was the timeout, so it goes with it. Impact Bulk move works at the size people actually use it. A document controller restructuring a folder does it once, and does not have to work out whether a reported failure really failed. Site Photos Show the Date You Uploaded Them User Story As a site manager uploading photos at seven in the morning, the platform stamped them with yesterday’s date, so I can now use the date on the photo as evidence of when it was taken. Before The upload date was stored correctly in universal time and then displayed as if it were local, so for anyone east of UTC every photo uploaded before midday showed the previous calendar day. On one project, ten of twelve photos uploaded on the second of September were labelled the first. After The photo grid and the lightbox show the upload date in your own timezone, using the same date handling the Document Register already used for exactly this problem. Impact A date on a site photo is often the only record of when something was covered up or made good. It now says what actually happened. Known limitations This is the date the file reached Deep Space, not the moment the camera took the shot. The platform does not display a capture date anywhere yet. Keep the feedback coming, we’re here to listen to you, and thanks for your support.

How do you feel about this update?

Tap a face to rate