Release notes

Every release, written down

Newest first, in the same words the apps use when they tell you what changed. All five services ship together, so one version number covers the lot.

Certainty v2.9.47

  • Team workspace A Secrets tab on every project and a Secrets page in the Work menu. Record every credential and environment setting a project depends on (kind, environment, provider, where the real value lives, owner, expiry, last rotation, notes), never the value itself. Expired and expiring rows are flagged on the project overview and on the dashboard.
  • Team workspace The owner and the project's PM get a push 30, 14, 7 and 1 days before a secret expires and on the day; from 7 days out leadership is added and an email goes out as well. Marking a secret rotated resets the clock.
  • Team workspace Secret changes appear in the project Activity history.
  • API list_expiring_secrets and add_project_secret.

Certainty v2.9.46

  • Team workspace Your own sheets on the Projects page. Add a tab, design its columns (text, numbers, dates, coloured choices, people, projects, checkboxes, links) and fill it in like a spreadsheet: click a cell to type, move with the arrow keys and Tab, drag rows into order, and paste a block copied from Excel to fill rows. Pipeline and Manpower come as ready templates. Every cell change is kept in the sheet's history with who and when.
  • Team workspace Custom sheets are included in the Projects Excel export, and each sheet downloads as CSV on its own.
  • Team workspace Only project managers and above design sheets; engineers edit rows.
  • API list_sheets, get_sheet, add_sheet_row and update_sheet_row.

Certainty v2.9.45

  • Team workspace A Projects page for the weekly team sync. Every client, internal and volunteer project sits on one board with its stage, RAG, lead, engagement period and man-days (logged time, or a figure the PM types in), and each project carries one update per week: summary, what's done, in progress, delayed, next steps, help needed and next milestone. Step between weeks, filter by stage, RAG, lead or missing update, and switch on presenter mode to read every update in order during the meeting. Every field change and every update is kept in the project's history with who changed it and when.
  • Team workspace Export the board for the week shown as an Excel workbook (Client, Internal and Volunteer sheets, a man-days roll-up per client and a legend) or as CSV.
  • Team workspace Project leads get a push on Tuesday afternoon and again on Wednesday morning when one of their projects has no update for the week.
  • Team workspace A Tracker tab on the project page, and the stage, RAG and lead on the project overview.
  • Team workspaceClient portal The project page's tabs no longer scroll off the screen; the ones that do not fit sit under a more menu.
  • Team workspace The task board scrolls while you drag a card toward a column that is off the screen.
  • Team workspaceClient portal The Maintenance tab loads for every role that can open the project, not only roles with the admin console.
  • API list_project_tracker and post_project_update.

Certainty v2.9.44

  • Team workspaceAdmin panel An organisation can be marked internal. The Create and Edit organisation dialogs have an Internal organisation switch (off by default, so every organisation stays a client unless you flip it), and the organisation card reads Internal or Client from that switch alone. Support chat rooms that belong to an internal organisation sort under Internal team instead of Clients as long as everybody in them is staff, and show the project and organisation on their second line.
  • Team workspace Marjorie, the People and Culture desk, is back. Type @hr in a staff-only room, a staff 1:1, or a room of an internal organisation and she answers; she never speaks in any room with a client in it. She carries an AI joke bot badge beside her name and on the @hr picker entry, because her replies are not HR advice.

Certainty v2.9.43

  • Team workspace The project Files tab now holds links and notes as well as uploads. Add link saves a name and an http(s) address that opens in a new tab; Write a note saves a title and formatted text you can read and edit in place. Links and notes share with the client, stay with the team and delete exactly like files, and every change is on the project's activity trail. Changing a link or note the client already sees needs the same share permission as sharing it.
  • Client portal Links and notes your project team shares appear on the Files tab; a link opens in a new tab and a note opens to read.

Certainty v2.9.42

  • Team workspace The receipt is attached while you add the line, not afterwards. The Add line form has a Receipt field (photo, PDF, camera on a phone, or drop a file on it), and one Save stores the line and uploads the receipt together. Editing a line shows its receipt with Replace and Remove in the same form.

Certainty v2.9.41

  • Admin panel The Leave tab on Team Pulse shows one row per leave, not one per day. A range reads as "2026-08-25 to 2026-08-28" with the number of days and weekdays underneath, and removing a recorded leave removes every day of it in one go. Approved requests still cannot be removed from this table.

Certainty v2.9.40

  • Team workspace New My Claims page for expense claims. Start a claim in MYR, SGD or USD, add each expense as its own line with a category, date, merchant and amount (mileage lines work out the amount from the distance), attach a receipt photo or PDF to every line straight from your phone, and optionally tie the claim to a project or organisation. Submit when it is complete; you can withdraw it while it waits, reply when more information is asked for, and see every step in the claim's history. Your role needs claims.read, which every staff role now has.
  • Team workspace A submitted claim shows the checks an approver will see: a line over 50.00 without a receipt, a line older than 90 days, a line that looks like one already claimed, and a total over 2,000.00. They are shown, not blocking.
  • Team workspace Claim notifications arrive as pushes and in the bell, and open the claim: more information needed, approved, declined and paid. Approvers are told when a claim comes in or a claimant replies.
  • Admin panel New Claims page. Queue shows every claim waiting for a decision or for more information, To pay shows approved claims not yet paid, and Paid, Rejected and All cover a date range and person. Open a claim to see its lines, receipts, checks and history, then approve, decline or ask for more information with a note, and mark it paid with the date and a payment reference. Only a role holding claims.approve or claims.pay can open the page, which is the Admin role by default.
  • Team workspace Tapping a notification that points at the admin app now opens the admin app instead of the wrong page, and opening a notification from the list marks it read as it should have.

Certainty v2.9.39

  • Team workspaceClient portal New Office hours only switch under Push notifications in Settings. Turn it on to hold push notifications outside 10:00 AM to 7:00 PM Singapore time and receive them at 10:00 AM; meeting invites, starting-soon reminders and reminders you set still arrive at once. It is off by default, so mentions and other notifications now reach you at any hour unless you opt in. Office hours themselves moved from 9 to 6 to 10 to 7.
  • Team workspace Being mentioned in a feed post or comment now notifies you in the evening as well; before, those pushes were held until the next morning. Picking one person from the mention list no longer drops a second name typed by hand.
  • Team workspace The status picker's third option is now Rest of the day, ending at 7:00 PM (or tomorrow 7:00 PM after hours), shown in your clock format, instead of a flat eight hours.
  • Team workspace On the meeting page, the Link search box opens above everything else and is no longer cut off by the card or hidden under the cards below it. A meeting can now also be linked to a project, alongside issues, requests and organisations.
  • Client portal A meeting linked to one of your projects shows that project on the meeting page.
  • Team workspaceClient portal Meeting recordings can be dragged to any point. New recordings are saved with their length and a seek index, so the player shows the real duration at once and jumps straight to the chosen moment; older recordings work out their length on first play and then seek the same way.

Certainty v2.9.38

  • Team workspace A check-in or check-out made within 1 km of the office is marked In office; anywhere else shows as Remote with the distance from the office. The month view marks each day's site and shows Corrected when an admin has fixed a missed check-out.
  • Admin panel Attendance shows In office or Remote with the distance next to every location, counts both on the Today tab, and the History tab lets a role with attendance.update set the check-out time of a missed session (within 24 hours of the check-in, with an optional note). The Office column now reads the office code, and the CSV export carries the site, distance and correction columns.
  • Admin panel Permanently deleting a user no longer stops on their attendance records; the records go with the account, and corrections they made for others stay without the corrector's name.

Certainty v2.9.37

  • Team workspace Check in and check out for every staff member, from the new Attendance card on Home or the My Attendance page. Your day shows the check-in time, a live clock while you are in, total hours and the number of sessions, and the month view lists every day with its first in, last out, hours and status. A reminder arrives at 6:30 PM if you are still checked in, and an entry left open overnight is marked as a missed check-out.
  • Team workspace A check-in or check-out records where it was made. The browser asks for your location once; if it is not shared the check-in still goes through and is marked as location not shared.
  • Admin panel New Attendance page. Today lists every staff member as checked in, checked out, not checked in or on leave, with check-in and check-out times, hours, and a map link to where each one was recorded. History filters by date range and person and exports to CSV. Only roles granted attendance.read see it, which is the Admin role by default.

Certainty v2.9.36

  • Client portal The Description box in Create New Request no longer collapses to a single line on a laptop screen. It keeps a full writing area with the formatting toolbar in view, scrolls inside itself once the write-up outgrows it, and the dialog is a little wider. Suggested type and priority now sit side by side under the upload button.
  • Team workspaceClient portal Every drop-down list (type, priority, organization, project and the rest) opens upward when there is no room below it, so the last options are never cut off at the bottom of the screen.
  • Team workspaceClient portal The Edit dialog for a title and description uses the same taller, self-scrolling editor.
  • Team workspace The Description step of the request wizard uses the same editor.

Certainty v2.9.35

  • Team workspace The Call button is hidden from chat headers while calling is switched off, instead of sitting there greyed out. Nothing behind it has been removed; it returns when calling is turned back on.

Certainty v2.9.34

  • Team workspace Support Chat tells DHC from clients. The room list now has All, Clients and Internal tabs, with an unread count on each. Under All the rooms sit in three sections: Direct messages (staff to staff), Clients (project threads and conversations with a client contact) and Internal team (staff-only group rooms). Client rooms carry a purple edge and internal rooms a green one, and every client row shows the client's name under the project name, so you can tell whose project it is without opening it. The tab you pick is remembered on that device. Saved Messages stays pinned above the tabs.

Certainty v2.9.33

  • Team workspace The feed is live. A new post, a kudos card, a shared streak, an edit, a removal, a comment and a reaction now appear for everyone with the page open the moment they happen, without a reload. Older pages still load in order underneath, and the count under the title counts what is on screen.
  • Team workspaceClient portal iPhone photos show up. A HEIC picked from an iPhone or a Mac is converted to a JPEG in your browser before it uploads, in the feed composer, both chat composers and the profile photo dialog, so the picture renders for everyone instead of only in Safari. You still pick the original file; nothing to do on your side. A HEIC that reaches the server another way is refused with a plain message rather than stored as a broken image.
  • Team workspaceClient portal What you are about to post is shown, not named. The feed composer, the comment box and the chat composer show a thumbnail of each pending image, GIF or video with its own remove button, and only a PDF or an unknown file keeps the name chip.
  • Team workspaceAdmin panel Fix: fewer database queries from idle tabs. The notification list now reads through an index instead of scanning the whole table (it read about 2,000 rows to answer 10), the presence sweep looks up privacy settings once per pass instead of once per open tab, the feed audience is remembered for a minute, and a reconnecting tab no longer refetches its notifications and presence more than once every thirty seconds.

Certainty v2.9.32

  • Team workspaceAdmin panel Meet: a call that loses its connection now gets it back on its own. A participant whose media session was dropped by the media service, or whose connection failed, used to keep asking a dead session forever with nothing on screen and no message. The room now lets that participant open a fresh session, the client rebuilds its connection, republishes its camera and microphone and fetches everybody else again, and everyone else swaps to the new tracks. If three attempts fail, one honest message asks you to reload.
  • Team workspaceAdmin panel Meet: stopping a screen share can no longer wedge your connection. The media service sometimes asks for a renegotiation when a share stops, and the client used to ignore it, after which every later request from that participant was refused until they reloaded. Every request that asks for an answer now gets one, a failed answer is retried, and a stale state is rolled back before a new offer is made.
  • Team workspaceAdmin panel Meet: failures on the media path are reported once instead of swallowed or shown as "no video". A refused request now shows one message per kind every thirty seconds, and a transient failure no longer switches video off for the rest of the visit.
  • Team workspaceClient portal The meeting page fits a phone. The tab row wraps instead of pushing Recording and Sharing off the edge, the four figures sit two by two, the header actions drop under the title, the attendance timeline gets a compact line per person, and the recording never pushes its buttons off the bottom.
  • Team workspaceAdmin panel Fix: an expired session cookie no longer logs you out when a refresh cookie is still valid, on every request as well as on sign-in. A forged token is still refused even when it has expired.
  • Team workspaceAdmin panel Fix: the media relay now records refusals it receives inside a successful reply, with the meeting, participant and track, so the next refused screen leaves a trace on the error log instead of only in a toast.

Certainty v2.9.31

  • Team workspaceAdmin panel Meet: room for fifty. A meeting now holds fifty people in the call and sixty waiting, and up to ten guests may knock from one connection, so a meeting room full of visitors on the office wifi is not turned away after the first two. Past twelve tiles on a computer, or six on a phone, the stage shows a page at a time with your own tile always in view, the sharer and the most recent speakers first, and arrows or a swipe to turn the page. Only the people on the page in front of you have their camera pulled, and only the people speaking have their voice pulled, which is what keeps a phone usable in a big room.
  • Team workspaceAdmin panel Meet: a shared screen can change hands. Press Share while somebody else is sharing and the bar asks whether to replace their screen; on Replace theirs stops, yours takes the stage, and they are told who took over. Where the meeting's sharing policy does not allow you, the control still says so.
  • Team workspaceAdmin panel Meet: the Share control stays on phones, greyed, and says that screen sharing is not available on this device rather than disappearing. Phone browsers have no screen picker to offer.
  • Team workspaceAdmin panel Fix: a meeting reopened on the same day is one meeting. Ending a repeating meeting and opening it again ten minutes later used to file the second session under next week's date, so the day's page showed one session and next week's meeting would have found its record already closed. Both sessions now belong to the day they happened on, the write-up covers them together, and next week starts clean.
  • Team workspaceAdmin panel Meet: after this release, a meeting tab that was open through the deploy will not see people join or leave until it is reloaded; audio and video keep working.

Certainty v2.9.30

  • Team workspace The Add people search on the Sharing tab now opens as a panel under the button. It used to draw outside the card, where the results were cut off and only a sliver of the search box showed.

Certainty v2.9.29

  • Team workspace Share a finished meeting with anyone. The Client access tab is now called Sharing and is no longer limited to the people who were on the call. Search for any colleague or client, add them, and decide for that person alone whether they may open the recording, the transcript or the summary. A client gets exactly what is switched on; a colleague already reads transcripts and summaries, so for them sharing puts the meeting on their calendar and, where the switch is on, opens the recording. Nothing can be shared until the meeting has ended, and clearing a person's switches takes it back.
  • Team workspace Leadership can see everyone's meetings. A Mine / Everyone control on the team calendar, for roles granted the new Show all right on team events (admin, ceo, gm and pm to begin with, editable per role), widens the calendar and the command palette to every meeting in the company. Other people's meetings are drawn dimmed so your own days still stand out, and the choice is remembered on that device.
  • Client portal Meetings shared with you have a home. A meeting the team shares with you appears on your calendar with a small Shared marker and in a Shared with you list on your home page, and the notification and email take you straight to it.
  • Team workspace Shared meetings on your home page. Staff who are handed a meeting they were not on find it in a Shared with you card on the home page, on their calendar with the Shared marker, and in search.
  • Team workspaceAdmin panel Fix: taking a share back no longer reads as a refusal. When the team withdraws something it had shared without being asked, the notification and email now say so instead of declining a request nobody made.

Certainty v2.9.28

  • Team workspaceAdmin panel Meet: a shared screen now reaches everybody in the room. When somebody started sharing, the room told every other participant to fetch the screen before the sharer's own browser had finished setting it up, and a participant whose request arrived too early was refused once and never asked again, so they saw "Could not play screen" and a blank stage for the rest of the share. Bigger meetings, especially with cameras on, hit this almost every time. A refused request now waits a moment and asks again, backing off for about half a minute, and only gives up, with the reason shown, if the screen really never arrives.

Certainty v2.9.27

  • Team workspaceAdmin panel Meet: captions no longer credit you with the other person's words. When somebody listens on speakers, their microphone hears the far end and their browser used to write those sentences down under their own name a second after the real ones, so a two-person meeting read as a conversation with half of it said twice and the write-up credited the wrong person. The browser now signs a line only when its own microphone was the one leading during that stretch, and the room drops a near-identical line arriving from a different person within a few seconds. Short replies like "okay" and "yes" are never dropped.

Certainty v2.9.26

  • Team workspaceClient portalAdmin panel Online now means somebody is actually at the keyboard. A laptop with its lid closed that stays awake kept its tab visible and its colleague "online" all night; presence now also needs input (a pointer, a key, a scroll or a touch) inside the last five minutes. A visible tab nobody has touched goes quiet within a couple of minutes, and the first touch brings it back at once. Last-seen times follow the same rule.

Certainty v2.9.25

  • Team workspaceClient portalAdmin panel "last seen" now means a person was actually looking. A tab left open in the background, a phone in a pocket or a socket reconnecting overnight no longer counts as being here; only a visible screen does. Presence dots and last-seen times follow.
  • Team workspaceClient portal Files on an issue or a feature or change request open in a preview first. Pictures, PDFs, video, audio and text show inside the app with the file's name, type and size, and a Download button saves it; anything else shows a card with the same button. Comment attachments open the same way.
  • Team workspaceClient portal Pasted text keeps your theme's colours. Descriptions and comments pasted from another editor carried their own text and background colours, which made them unreadable in dark mode; those colours and fonts are now dropped when shown and when pasted.
  • Team workspace The Call button is switched off for now. Phones cannot route a web call to the earpiece, so calling stays disabled until they can; the calling code is unchanged.

Certainty v2.9.24

  • Team workspace Calls no longer get stuck. If your side loses a call before it is answered (a reload, a closed tab, a refused microphone, a dropped connection) the call is called off for you and the conversation says "Cancelled call" instead of "Missed call"; pressing Call again while your own earlier ring is still standing simply places the new call. If the other person is the one ringing you, their call appears on your screen instead of an error.
  • Team workspace The call panel says "Calling" until the other person's app confirms it is ringing, then "Ringing", and the ringback tone starts only then, the way a phone does.
  • Team workspace A ring notification now expires with the ring, and a call that was called off or declined takes its notification down on the other phone, so a stale Decline can never end a newer call.
  • Team workspaceClient portal "Chat info" in the conversation menu opens again in both apps. The panel had been failing silently on open, and dialogs raised from that menu now wait for the menu to close first.
  • Team workspaceClient portal A conversation stays on the newest message when it opens. Pictures, GIFs and voice notes that finish loading late used to push the newest messages below the fold; the pane now follows the bottom until you scroll up yourself.
  • Team workspaceAdmin panel All apps: on the Glass look, floating panels are back where they belong. The GIF picker, the call panel, the schedule picker, message actions, toasts, the site header and menu, and the meeting dialogs were being pinned into the page flow by the glass finish and could land off screen. Classic is unchanged.

Certainty v2.9.23

  • Team workspaceAdmin panel All apps: the Glass look is rebuilt as liquid glass. Only the floating layer is glass now: sidebar, top bar, dialogs, menus, the chat composer and sticky headers, the call panel, the site header and its menu. Cards, tables, feed posts, kanban columns and the marketing site's editorial panels sit on calm paper over a soft scene of drifting brand-coloured light, so the glass has something to bend. Panels come in three thicknesses with matching blur and shadow, carry a specular rim that turns toward the pointer, light up when pressed, and keep concentric corners. Reduced transparency, increased contrast and reduced motion are honoured. Classic is the default and is unchanged.
  • Team workspaceClient portal On Chromium browsers the large panels also refract the content behind their edges, the way real glass does. Safari and Firefox get the same material without the refraction.
  • Admin panel The Appearance card keeps its Classic and Glass choice and loses the intensity slider; the material is no longer adjustable, it is one finish shared with every other app. A console that was set to Glass stays on Glass.
  • Site The Glass look now frosts only the sticky header and its menu; the editorial panels return to paper. The page pays fewer bytes for it than before.
  • Team workspaceAdmin panel sign-in and meetings: the same glass finish as the rest, with video tiles and the info panel no longer pretending to be glass.

Certainty v2.9.22

  • Team workspaceAdmin panel Meet: joining is recorded when you press Join on the device check, not when the page opens. Backing out of the check no longer leaves you listed in a meeting you never entered, and the meeting is no longer left running.
  • Team workspace Your status pill corrects itself. If a meeting row was left open behind you, the next time your status is read the server asks the room whether you are actually connected and clears "In a meeting" on the spot instead of waiting for the nightly sweep.
  • Site A Glass look for the marketing site. A new button beside the light/dark switch turns the pages into frosted panes over a soft purple ground, in both themes, remembered per browser; Classic is the default and unchanged.

Certainty v2.9.21

  • Team workspaceClient portal A Glass look. Settings has a Look switch: Classic is the app as you know it, Glass frosts the panels over a soft purple ground, the same finish the meeting, sign-in and admin screens already wear. It respects reduced transparency and reduced motion, drops the blur on phones where it would cost scrolling, and Classic is untouched.
  • Team workspaceAdmin panel All apps: one brand purple. The primary colour is the same shade everywhere now, with matching dark-mode lifts, and every loading spinner follows it instead of carrying its own.

Certainty v2.9.20

  • Team workspaceAdmin panel Site: the marketing site catches up with the product. New pages for meetings, the calendar and team messaging, and new sections for the client portal, support chat, notifications, permissions and privacy, the activity timeline and the team feed, with ten new answers in the FAQ and a fresh home page section.
  • Team workspaceAdmin panel Site: a Privacy and PDPA notice and Terms of service, written for Malaysian law with a Bahasa Malaysia notice, linked from the footer and from Settings in both apps.
  • Team workspaceAdmin panel Site: faster and more accessible. Text paints before any script runs, fonts are subsetted to the characters the site uses, the stylesheet is inlined, colours meet contrast on small text, the map on the contact page loads on demand, and pages carry proper locale and social tags.
  • Team workspaceClient portal Settings has a Legal section linking the privacy notice and the terms.

Certainty v2.9.19

  • Team workspaceClient portal Saved Messages is a chat with yourself. It sits at the top of your chat list with the full composer, so you can keep notes, files and GIFs there, and keeping any message is now Forward to Saved Messages, which is listed first in the Forward dialog. Everything you had saved before was moved in for you. The old Save action is gone.
  • Team workspaceClient portal Replies become threads. A message that has been answered shows how many replies it has, and opening it shows the whole thread in a side pane on a desktop or a full page on a phone, with its own composer.
  • Team workspaceClient portal Code blocks in chat are coloured by language when the fence names one, in both your bubbles and theirs.
  • Team workspace The meeting link picker searches deeper, up to twenty five matches per kind instead of eight, and the reaction list follows the screen when a phone rotates.
  • Team workspaceAdmin panel Fix: forwarding a message with an attachment the source room no longer holds no longer leaves a dead chip; a repeating meeting's occurrence list no longer treats one old summary as covering every week; ending a repeating meeting twice can no longer start two write-ups.

Certainty v2.9.18

  • Team workspaceClient portal Choose your clock. Settings has a Time format switch, 24-hour or AM/PM, and every time shown in the apps follows it: chat, calendar, meetings, activity, notifications, timers and the feed. The calendar's own toggle sets the same preference.
  • Team workspace Calls behave like a phone. Where the browser allows it the call starts on the earpiece with a Speaker button to switch to the loudspeaker and a list for Bluetooth or wired headsets. While it rings you get Mute, Speaker and End only; camera and minimise appear once connected. On a phone the screen stays awake and dims to black after a few seconds, a tap brings the controls back. Muting before the other side answers now sticks.
  • Team workspace A meeting whose room never closed no longer keeps you "In a meeting" for days. Stale rooms are ended by a daily sweep and the status pill corrects itself the next time it is read.
  • Team workspace The status menu shows its colours again. Available, Busy and Away each carry their own dot.
  • Team workspaceClient portal The full emoji picker in the message menu has room to breathe. It opens at a proper size and scrolls, flips above the message when there is no space below, and on phones the message slides up to make room and slides back when you are done.
  • Team workspaceClient portal Presence dots tell the truth. A colleague who goes quiet turns grey within two minutes instead of staying green next to "Last seen 12m ago", and anyone who hides their last seen no longer has it sent to colleagues' screens.

Certainty v2.9.17

  • Team workspaceClient portal A GIF or picture sent on its own now fills the message the way it does in other messengers, scaled to the bubble on phones instead of showing as a small tile, and cropped rather than squashed when it is very tall.
  • Team workspaceClient portal The message menu is a vertical list again. A shared style name was pulling it sideways into a scrolling strip; the same leak was tidied out of the reactions list.

Certainty v2.9.16

  • Team workspace Calls are calls now. The phone button in a direct chat rings your colleague and opens a compact call screen inside the app, audio first, with mute, camera and hang up, instead of dropping both of you into a meeting room. Accept from the notification lands straight in the call. Calls stay off the calendar and never get a summary; a missed, declined or finished call shows as a line in the chat.

Certainty v2.9.15

  • Team workspaceClient portal GIF fixes. Picking a large GIF no longer fails; a smaller rendition is used when the biggest one is too heavy. On phones the picker opens as a sheet above the composer with properly sized tiles instead of a strip of slivers at the top of the screen.

Certainty v2.9.14

  • Team workspace Search that finds everything. Press ⌘J or Ctrl+J anywhere and type: pages (including the ones you hid from the sidebar), chats by name, issues, feature requests, change requests, requests, meetings, personal tasks, organisations and projects, grouped and reachable with the arrow keys. The experimental label is gone.
  • Team workspaceClient portal Recurring meetings keep one record per occurrence. Each run of a weekly meeting gets its own transcript window and its own summary, chosen from an occurrence selector on the meeting page, instead of one summary refusing to cover the whole series.
  • Team workspaceClient portal The message menu is a real context menu now. Long-press or right-click and the chat blurs, the message stays where it is, quick reactions float above it and a compact glass menu sits below, aligned to your side or theirs. Tap outside to dismiss.
  • Team workspaceClient portal GIFs now come from KLIPY. The previous provider closed its service, so the picker searches KLIPY instead, with its attribution shown. Nothing changes in how you send one.

Certainty v2.9.13

  • Team workspaceClient portal Every project has a Files tab. Upload the documents the team should find in one place, preview or download them, and choose per file whether it stays with the team or is shared with the client. Sharing is a deliberate step, needs the right permission, and is written into the project's activity. Clients see only what was shared with them.
  • Team workspaceClient portal The project's story in one place. An Activity tab shows what happened, week by week, as a timeline: work items changed, members added or removed and by whom, meetings that took place, files shared. Clients see the parts that concern them.
  • Team workspaceClient portal Chat fixes from the field. Forward was hiding below the fold on phones; the message menu now scrolls on its own and follows the familiar order, Reply, Copy, Pin, Forward, Save, Remind me. Scheduled messages sit behind a calendar button beside the composer that appears only when you have some and vanishes as you type; it opens that chat's scheduled page with Send now and Cancel. The Send later dialog is centred and properly laid out.

Certainty v2.9.12

  • Team workspace Say whether you are around. A status pill in the top bar shows Available, Busy or Away, sets itself to Busy while you are in a meeting or running a timer, and lets you override it for a while. Colleagues see the same dot beside your name in chat and on the home widgets.
  • Team workspace Know before you invite. While setting up a meeting, each attendee shows Free, Busy, On leave or Holiday for the chosen time. Titles stay private.
  • Team workspace Call a colleague from a chat. A phone button in a direct chat starts an instant room and rings the other person with Accept and Decline right on the notification. Calls are for staff only.

Certainty v2.9.11

  • Team workspaceClient portal Pin what matters. Any participant can pin a message; the newest pin sits in a bar at the top of the room, tap it to cycle through the rest. Save any message for yourself and find it later under Saved in the chat sidebar.
  • Team workspaceClient portal Forward and select. Pick one or several messages and send them to another chat, with a line saying where they came from.
  • Team workspaceClient portal Send it later, or be reminded. Schedule a message for a chosen minute in Malaysia time and cancel it before it goes. Ask to be reminded about any message and a notification comes back when it is time.
  • Team workspaceClient portal GIFs in chat, and in the feed for staff. A GIF button opens a search with trending picks; the chosen GIF is stored with us like any other attachment.
  • Team workspaceClient portal Presence is yours to show. Two switches in Settings hide whether you are online and when you were last seen. Hide yours and you stop seeing other people's too.

Certainty v2.9.10

  • Team workspaceClient portal Chat learned to talk back. Long-press or right-click a message for a quick row of reactions, or open the full emoji picker and react with anything. Reply quotes the message you are answering and jumps back to it on tap. Fenced code renders as a proper block with a copy button, and Shift+Enter starts a new line.
  • Team workspaceClient portal You can see who is around. Direct chats show whether the other person is online or when they were last seen, in the header and in the list.
  • Team workspaceClient portal Mute a person. Their messages still arrive, but no toast, push, email or badge follows them. Muted chats sit dimmed in the list until you unmute.

Certainty v2.9.9

  • Team workspaceClient portal Chat messages stopped cluttering the bell. A new message now shows as a toast and a push, and the Support Chat item in the sidebar carries a red count of what you have not read. Nothing lands on the Notifications page for it. If push is off on all your devices, you get one email per conversation every half hour at most. Mentions still reach the bell.
  • Team workspaceClient portal Meetings open inside the app on your phone. Tapping Join in the installed app used to throw you out into a browser tab. The room now renders within the app, with a way back to the calendar. Desktop is unchanged.
  • Team workspace The meeting page grew up. Chips for the kind, when it ended and whether it still needs a name; a strip with when, how long, who came and whether a recording exists; a Who was there timeline showing each person's time in the call, drops and rejoins included; details and links in a side rail; rename and write the notes right on the page.
  • Team workspace Link a meeting to the work it changed. The Linked to card connects a meeting to issues, feature requests, change requests or an organisation, and each linked issue records it in its history. Clients see only links to items they can already open.
  • Client portal The meeting page shares the same look, with what has been shared with you up front.
  • Admin panel Last names are optional when adding or editing a person. Names render cleanly everywhere with only a first name.

Certainty v2.9.8

  • Client portal A calendar of your own. Clients now have a Calendar in the sidebar showing Malaysian and Singaporean public holidays and every meeting they are named on, with the join link right there while it is live. Once a meeting ends, its page locks: recordings, transcripts and summaries are shared by the team, not assumed. Ask for access from the locked page and you will hear back by notification and email.
  • Team workspace Choose what a client gets to see. A finished meeting with client attendees gains a Client access tab where anyone who can approve project access decides, per person, whether they may open the recording, the transcript, the summary, or nothing. Requests from clients land there too, with their note, and every grant can be tightened later.
  • Team workspaceAdmin panel Fix: meeting summaries stay inside the team. The write-up notification used to reach client attendees with a link they could not open; it now goes to colleagues only, and clients learn about a summary when it is shared with them.
  • Admin panel One search box on the users page. The filter dropdown is gone. Type a name, an email, a role or an organisation and the matching people appear within the tab you are on.

Certainty v2.9.7

  • Team workspace Kudos are scarcer and mean more. Everyone now gets two to give each month instead of five. Kudos already given stay exactly as they are; anyone who has already spent more than two this month simply starts fresh next month.

Certainty v2.9.6

  • Admin panel Staff, clients and system accounts are separate tables now. The users page opens on a Staff tab, with Clients and System beside it, each carrying its live count and its own pages, so scanning one audience never means wading through another. The Type column and filter are gone; the tabs are the separation the team asked for.

Certainty v2.9.5

  • Team workspaceAdmin panel Meet: captions now work in browsers that cannot make their own. Where the browser has no captioning of its own, your speech is written down on the device itself after a one-time download, and the audio never leaves the machine. Where even that is not possible, the words go through your team's own captioning service instead. Either way, everyone's words reach the live captions, the transcript and the write-up, and the room is told plainly which kind it is getting.
  • Admin panel The users list separates who someone is from what they may do. A new Type column marks each row Staff, Client or System, with its own filter beside the Role one, so "all clients" no longer depends on role names. Changing any filter returns the list to the first page.
  • Admin panel Filtering users by organisation works again; it used to fail outright.
  • Team workspace The calendar can show times your way. A small toggle by the calendar's controls switches every time on the page between 24-hour and AM/PM, and the choice is remembered in that browser.

Certainty v2.9.4

  • Team workspace A nudge before things start. Anything on the calendar with a start time now reminds its people once, about fifteen minutes ahead: a notification for those with push turned on, an email for those without. An event with no named attendees nudges the whole team, by notification only.
  • Client portal Customers attending a meeting get the same reminder by email, with the join link and the time in Malaysia time.
  • Team workspaceAdmin panel Meet: recording is announced without eating the screen. The full-width recording bar is gone; a small badge sits over the stage instead, so the controls bar no longer slips below the bottom of the screen. When a recording begins, everyone in the room is told once who started it.

Certainty v2.9.3

  • Team workspaceAdmin panel dev/meet: the meeting owner decides what a meeting keeps. Two new switches when scheduling and mid-call: keep a transcript of what is said, and write the meeting up afterwards. Turn the transcript off and captions still show live in the room but nothing is stored; turn the write-up off and no summary is made. Both stay on unless you say otherwise.
  • Team workspace Invite the whole team in one pick. The attendee box opens with an Everyone on the team row that adds every colleague at once as ordinary removable names, stopping at the fifty-person ceiling. Typing to find one person works exactly as before.

Certainty v2.9.2

  • Admin panel The glass look now carries the product's real glass. Panels catch a light that follows your cursor, keep a bright edge where the light lands, and shift subtly under the pointer, the way the sign-in and meeting screens already do. Classic is untouched, and the intensity slider still holds.

Certainty v2.9.1

  • Team workspaceAdmin panel Fixed: the Calendar row in the phone menu has its icon back. The menu on a phone kept its own list of icons and Calendar was missing from it; every menu now draws from the same list, so the two can no longer drift apart.
  • Team workspaceAdmin panel Under the hood: the way stored lists and objects are written to the database is now checked at build time, closing off a mistake that has caused bugs twice before.

Certainty v2.9.0

  • Team workspaceAdmin panel Meet: participant tiles now fill the whole stage. The grid arranges itself from the room and the screen, so two people sit side by side on a desktop and stack on a phone instead of leaving the bottom half empty. Very large calls keep legible tiles and scroll.
  • Team workspace Meeting summaries write themselves. When a meeting ends, the write-up starts on its own and the people who were in it hear about it when it lands: a notification for those with push turned on, the summary itself by email for those without. Guests without an account are left out of both. The Generate button is gone; a failed run keeps a Try again.
  • Admin panel The users table lost its bulky organisations column. Click a user to open their details, see every organisation they belong to, and edit them from the same place.
  • Admin panel Last seen is live. The users list and the details view update as people come and go, no refresh needed.
  • Admin panel A Settings page with an appearance experiment. Switch between the classic look and a glass one, with a strength slider; classic stays the default.
  • Team workspaceAdmin panel Fixed: removing an organisation from one user no longer removed it from every other member of that organisation as well.
  • Team workspaceAdmin panel Fixed: saving a user in the admin console no longer blanked their last seen time until the next reload.

Certainty v2.8.4

  • Team workspaceClient portal Opening a chat lands on the newest message again. Inline images were loading after the jump and pushing the view up the history; it now settles at the bottom once they are in.
  • Team workspaceAdmin panel Meet: the meeting app carries a Beta tag in its header.

Certainty v2.8.3

  • Team workspace Delete a meeting for good. An ended meeting can be removed from its page or the calendar, separately from cancelling a scheduled one: a confirmed delete takes the event and permanently purges its recording, transcript, captions and summary. It is the creator's or a moderator's to do. Deleting one occurrence of a repeating meeting leaves the shared room for the rest; deleting the series takes everything.
  • Client portal Customers can message the people in their organisation. A new chat button opens a 1:1 with the staff working on their projects or a fellow contact in the same org, carrying files, voice notes and everything else chats do. Reach is limited to people you share an organisation with.

Certainty v2.8.2

  • Team workspace Starting a direct message with a colleague works again. It was refusing almost everyone with "You can only chat with a colleague" because it read the wrong account field; it now uses the same active-account signal as the admin console and sign-in.

Certainty v2.8.1

  • Team workspace Message a person directly. A new chat button beside the search finds any colleague and the conversation simply exists, one per pair, carrying everything chats already do: files, voice notes, edits and links. It shows as their name and presence, and customers never see it.
  • Team workspaceClient portal The chat grew up. Roomier conversation rows with a clear unread state, a calmer message surface with sticky day pills and tighter grouping, and the chat info is a proper page: a hero header, the room's facts as cards, and Members, Files and Links tabs, Links finds every URL ever sent in the room.
  • Team workspaceClient portal Links in messages are clickable at last, opening safely in a new tab.
  • Team workspace The calendar now believes the room. A meeting ended for everyone reads Ended the moment you open it, the Join button gives way to Open meeting page, and an ended meeting's chip goes straight to its page, where the transcript, recording and summary live, now reachable for any meeting, not just recorded ones.
  • Team workspaceAdmin panel Meet: copy the meeting link from inside the call. A link button sits first in the controls and on the device-check screen, so sharing the room no longer needs a trip back to the workspace.

Certainty v2.8.0

  • Team workspace A meeting now lives only on its members' calendars. The creator and the people named on it see it and get its reminders; everyone else's calendar stays clean. Team days, lunches and holidays are still for everyone, and inviting someone from inside the call puts the meeting on their calendar.
  • Team workspace Meetings can repeat, daily, weekly, every two weeks or monthly, open ended or until a date. The whole series keeps one join link, the calendar shows every upcoming occurrence with a repeat mark, and editing or cancelling asks whether you mean just that day or the whole series. Customers get one invitation describing the rhythm, not one email per week.
  • Team workspaceAdmin panel dev/meet: the meeting owner decides who can share the screen (everyone, the team, or just the owner), who can let people in from the lobby, whether guest links work, and whether the lobby screens arrivals at all, set when scheduling and changeable mid-call from a panel in the room. Screen sharing is now genuinely one at a time.
  • Team workspaceAdmin panel Meet: live captions in the call. Turn them on and your browser transcribes what you say for everyone in the room, with the last few lines overlaid above the controls and a small mark on your tile. Captions are kept with the meeting; browsers that can't produce them still show everyone else's.
  • Team workspace An ended meeting can write its own minutes. The Summary tab sends everything said and typed to the office model and comes back with an overview, decisions and action items with owners; the summary is kept, can be regenerated, and the last good one survives a failed attempt. Repeating meetings sit this release out.
  • Team workspace The meeting event page's Chat tab is now Transcript, spoken captions and typed messages interleaved into one account of the meeting.
  • Team workspaceClient portal The support chat composer sits clear of the phone's bottom edge, long messages wrap and grow the box instead of scrolling on one line, and recording a voice note finally moves like it should.

Certainty v2.7.0

  • Team workspace Ask colleagues into a meeting without leaving it. Search for them from inside the call and they get a notification on their phone that carries them straight into the room, or an email with the link when nothing can reach their phone. Asking again is rate limited to once a minute.
  • Team workspaceClient portal Voice notes in support chat. Hold the microphone to talk, slide left to throw it away, slide up to keep recording hands free with delete and send buttons. Notes play back in a small bubble with a scrub bar, and the room list says a voice note arrived.
  • Client portal A customer named on a meeting gets a proper email invitation: the day and time in Malaysia time, a join button, and three short steps on how to join. If the time moves they are told the new one, and if the meeting is called off they are told that too.
  • Client portal A customer with an account who opens a meeting link is recognised and waits under their own name, with no name to type. Reloading the page keeps their place, admitted or waiting.
  • Team workspace Events can now name customers as attendees alongside colleagues. Colleagues hear about it in the app as before; customers are reached by email only.
  • Team workspace Public holidays sit on the calendar as quiet amber day labels, with the office in brackets when a holiday is not company wide.
  • Team workspace Release notices finally say what is in the release. The announcement for a new version lists that version's changes, and the same list rides the email.

Certainty v2.6.0

  • Team workspace Calendar is its own page in the sidebar, and it now carries what the team has on as well as what is due. The month grid starts on Monday at last, events sort to the top of a day in start order, and the same grid is still the Calendar tab on My Issues.
  • Team workspace Start or schedule a meeting from the calendar header. The New menu offers three things: start one this second and the room opens in a new tab, create a link for later to hand to somebody with nothing on the calendar behind it, or schedule one for a day and a time. The Join box beside it opens a link somebody sent you, or a code they read out.
  • Team workspace A scheduled meeting takes a title, a day, a time and a length, an optional description, and optional attendees. Name people and only they are told about it; name nobody and the whole team is. Either way it sits on everybody's calendar. Turn the meeting link off and it becomes a plain calendar entry, for a team lunch or a day somebody is away.
  • Team workspace Everybody is told when an event is added or called off, and an edit is announced only when the day, the time or the link actually changed. On the day itself one reminder goes out for each event.
  • Team workspace Meetings run in the browser, with nothing to install. Anybody holding the link can join, with or without an account: they give a name, check their camera and microphone, and wait to be let in by somebody already in the call. Camera and microphone toggles, screen sharing, a keyboard for all of it, and a chat that is kept afterwards.
  • Team workspace Whoever set a meeting up can record it. Nothing is ever recorded on its own, and while one is running everybody in the room, guests included, sees a notice naming who started it.
  • Team workspace Every meeting leaves a page behind on its day in the calendar: the description, who was named on it, who actually came and how long they stayed, the whole chat, and the recording to play back or download.
  • Site Two new user guides, on the calendar and on running a meeting, and answers about guests and recordings in the questions.
  • Admin panel The role editor gained Team Events and Meetings. Team Events carries a Moderate checkbox, which lets a role edit or cancel anybody's event rather than only its own.
  • Team workspaceAdmin panel All apps: signing in with Microsoft works again when you arrive at the login page from somewhere else in the product. It was failing outright for anyone bounced there from another app, and it now brings you back to the page you were headed for.

Certainty v2.5.0

  • Team workspaceAdmin panel All apps: staying signed in finally works the way it should. Your session now lasts as long as you keep using the app (up to 30 days) instead of ending abruptly a day after you logged in, a brief network hiccup no longer throws you to the login page, and if you do land there with a live session you are taken straight back in.
  • Team workspace Switch Module reliably shows the module picker again instead of bouncing you back where you came from.
  • Team workspaceClient portal Removing a due date from an issue, FR, CR or request now actually removes it, and the change shows in the item's history. A date entered in a broken format is refused with a clear error instead of being silently ignored.
  • Team workspace Closing an item no longer quietly saves a due date you had picked and then abandoned in the same dialog.
  • Team workspace The Announcements page shows titles only; click one to unfold the full text.
  • Admin panel The browser tab now says Certainty Help Desk instead of Vite App.

Certainty v2.4.1

  • Team workspace The mascot actually walks now, with a visible waddle, every minute or two. Its speech bubble sits beside it instead of on top of it, wraps long answers properly, and clicking it no longer draws the browser's blue focus box.
  • Team workspace On a phone, a button in the feed header calls the mascot up in its own panel, with the same chat and the same moods.

Certainty v2.4.0

  • Team workspace The feed has a mascot. A pixel robot walks the header, blinks, shrugs and mutters to itself, and its mood drifts with how the day is going: ignore it long enough and it gets bored, talk to it and it cheers up, upset it and it sulks for a minute.
  • Team workspace Click the mascot to send it one message. It answers in its speech bubble, in character as a cat, acts out what it can (a yawn is yawned, not written) and thinks under a small lit bulb while it decides. Each message stands alone and nothing is kept.

Certainty v2.3.1

  • Team workspaceClient portal The new dashboards fit a phone screen again. Long item titles shorten with an ellipsis instead of dragging the page sideways, and the stat row wraps where it should.

Certainty v2.3.0

  • Client portal The home page is now a real dashboard. A greeting sums up what is waiting for you, your organizations and every project you are part of sit on cards with their open work counted, recent updates from your requests and chats stream in live on the right, and shortcuts to install the app, alerts, the user guide and settings sit at the bottom.
  • Client portal Raise a request straight from the dashboard. Pick the organization, pick the project, and the familiar request form takes it from there.
  • Team workspace The internal workspace home page is now a working dashboard: your assigned items with All, Overdue and This week views, personal tasks with a quick add and one-tap complete, your running timer with a stop button, man-days logged today, kudos left to give with your latest received, your private streak, who is online and who is on leave today, the newest errors, the latest announcement and the three most recent feed posts.
  • Team workspace Hide sidebar items you do not use from Settings, per device, with a reset to bring them all back. Dashboard and Settings always stay.
  • Team workspace The workspace now calls itself the internal workspace.
  • Team workspaceAdmin panel All apps: dropdown menus sit flush against their field again instead of floating a notch below it, on phones too.
  • Team workspaceAdmin panel Internal: the API test suite runs in two shards so the full run no longer exhausts a single runtime.

Certainty v2.2.0

  • Team workspace An Active now panel beside the feed shows which colleagues are in the app right now, refreshing on its own while you read.
  • Team workspace A new Announcements page collects release notices and notes from the team in one place, and announcement notifications now land you there.
  • Admin panel Write an announcement to the whole team from the Announcements page, and send it as an email too when it matters. Notices you wrote can be deleted; the record of automatic release notices cannot.
  • Team workspace Request leave from the new My Leave page: pick the days, say why, and watch the decision arrive as a notification. Approved days pause your streak instead of breaking it.
  • Admin panel Team Pulse gained a Leave requests tab. Approve or decline with a note, and approved days land on the leave calendar by themselves.
  • Site The site gained a Team feed feature page covering the feed, kudos, streaks, Team Pulse, presence, announcements and leave, plus three new user guides.

Certainty v2.1.0

  • Team workspaceClient portal See who is online in a chat. Members in the details panel carry a green dot while they are connected, and the room header counts how many people are online right now, live as people come and go.
  • Admin panel The users list shows who is online at this moment and when each person was last seen, updating while you watch.
  • Admin panel A new Announcements page, for roles granted the new Announcements resource. When a new version goes live, people who have not opened the app for a set number of days are told in the app, by push and by email. Turn it on or off and choose the window there, and the page keeps a record of every announcement sent.
  • Team workspaceAdmin panel All apps: on iPhone, tapping into a text field no longer leaves the page zoomed in after you finish typing.

Certainty v2.0.1

  • Team workspaceAdmin panel All apps: a brief server hiccup while your session was being checked no longer logs you out. Only a genuinely expired or invalid session sends you back to the login page.
  • Team workspaceClient portal The live notification and chat connections now ride out short platform blips instead of failing, so notices and messages keep arriving without a reload.
  • Team workspaceAdmin panel Internal: the daily holiday calendar sync no longer trips over an empty answer from the calendar service.

Certainty v2.0.0

  • Team workspace Click an image in a post and it opens in a viewer, with arrows to step through the other pictures and a counter for where you are. A click never downloads any more, and the one download button sits inside the viewer.
  • Team workspace Videos play in the feed, in the card where they were posted. A video can be up to 50MB and one post can carry 80MB across its files, and only one video plays at a time.
  • Team workspace Paste an Instagram or Facebook video link into a post and it becomes a player you tap to start. It plays inside the app so nothing takes you off the page, and nothing loads until you press play.
  • Team workspaceClient portal Clicking a notification now brings you to the tab you already have open, on the page the notice was about, instead of opening another one.

Certainty v1.11.0

  • Team workspace Mention people with @ in a post or in a comment. Everyone you name is told, with quiet hours respected, and the notice opens that post pinned above the feed so you land on the thing you were called into. Editing a post afterwards never notifies anyone again.
  • Team workspace One text box for a post. Type @ to mention someone, # to tag, and paste a link where it belongs in the sentence. The separate tag and link inputs are gone.
  • Team workspace The feed keeps going as you scroll. The next page is fetched before you reach the bottom, and a line at the end tells you when you are caught up.
  • Team workspace Moderators, meaning roles granted the new Feed moderate permission, can delete any post, and who took it down is recorded. A kudos still cannot be deleted by anyone.
  • Admin panel The role editor gained a Moderate checkbox on Feed, which lets a role delete any post in the team feed. It starts on for Admin, CEO, GM and PM.

Certainty v1.10.0

  • Team workspace A Feed for the team. Post an update with images, tags, links and references to an issue, a feature or change request or a task, react with one of five reactions, and reply underneath in a comment thread one level deep.
  • Team workspace Peer kudos. Five to give each month, at most two to the same person, each with a short reason. A kudos is permanent: the reason can be corrected for five minutes and there is no delete, so what you say stands. Kudos show in the feed as their own card and the person you thanked is told.
  • Team workspace My Kudos holds your own history, what you gave and what you received, and only you can see it.
  • Team workspace Personal streaks. A day counts when you move at least one work item, weekends, public holidays and approved leave pause the run rather than break it, and two quiet working days are forgiven. Only the current month is tracked, so there is no all-time table to climb. Share this month's streak to the feed if you want to, and ask once a month for a day to be restored when something the calendar did not know about got in the way.
  • Team workspace Team Pulse, for roles granted it, shows how the team is doing as a whole: delivery week by week, the reopen rate, kudos totals and the posts people are talking about. Team totals only, never a per-person number.
  • Team workspaceClient portal With text size set to Large, the account menu at the bottom of the phone drawer and the chat message box are on screen again instead of below the fold.
  • Admin panel Adding someone to an organisation now searches for the person by name or email instead of showing a list of users.
  • Admin panel A Team Pulse tab: decide streak restore requests, review flagged kudos pairs with the rule that flagged them spelt out, keep the public holiday calendar for each office with manual overrides, and record leave.
  • Admin panel Roles gained Feed and Team Pulse resources. Feed is open to the internal roles and never to client accounts; Team Pulse starts denied to every role and is granted deliberately.
  • API Assigning by name works when a stored name carries a stray space, and when a name still cannot be matched the tool now points you at the person's email.
  • Team workspaceAdmin panel Monthly kudos reminders: a quiet in-app nudge mid-month, and a push three days before the month ends if most of your kudos are still yours to give. Turn both off with Kudos reminders in Settings.

Certainty v1.9.1

  • Team workspaceClient portal @ in chat now suggests people in the room rather than items, and a mentioned person is told about it: in the app if they are looking, by push if not, and by email when push is not set up.
  • Team workspaceClient portal # in chat suggests items from this chat's project only, and item links in older messages keep working within the project.
  • Team workspaceClient portal The chat header stays put while you scroll on a phone.
  • Team workspace Assigning someone to a task they are already on no longer lists them twice.
  • Team workspace The Assigned to me list sorts by any column without erroring and no longer comes back empty when no page size is given.
  • Client portal The logo in the phone top bar is visible in light mode again.

Certainty v1.9.0

  • Team workspaceClient portal Support chat has a new compact look. Messages fill the screen, timestamps sit inside the bubble, and dates appear as small pills between days.
  • Team workspaceClient portal Long conversations open on the latest messages and load older ones as you scroll up, so big rooms stay fast.
  • Team workspaceClient portal Sending works with one tap while the keyboard is open, and a message that fails to send now says so, with retry and delete to hand.
  • Team workspaceClient portal Type # in the chat box to reference an issue or a feature or change request by its id, with a picker that searches as you type. Mentions with @ work as before.
  • Team workspaceClient portal Tapping a file in chat opens a preview with a download button instead of downloading straight away.
  • Team workspaceClient portal Chat details now show members and shared files in their own tabs, and the room actions moved into the menu at the top.
  • Team workspace re-sort a misfiled item from its page. An issue can become a feature or change request and back, keeping its id, comments, files, history and logged time. Re-sorting needs update rights on both kinds involved.
  • Team workspace Searching now finds support chats by their title and opens them.
  • Client portal Your project opens as tabs, one per tracker, with status counts you can filter by, search and pagination, in the same shape the team sees.
  • Client portal Raising a request works from a phone again. The button no longer disappears on small screens.
  • Admin panel Filtering people by role now matches properly, and organisation pickers list every organisation rather than only the first page.
  • Admin panel Renaming a role to a name another role already uses is now rejected.
  • Team workspaceClient portalAdmin panel Your role shows its proper name across the apps instead of its internal identifier.
  • Team workspaceClient portalAdmin panel Dialogs keep their close button visible while they scroll, and dropdown menus follow along when a dialog scrolls under them.
  • API Chat history supports cursor paging, chat sends are acknowledged end to end, and item conversion moves every linked record in one transaction.

Certainty v1.8.1

  • Team workspaceClient portal Emails have a new editorial look with the code, the reason and the sender front and centre, and the logo that never loaded is gone.
  • Team workspaceClient portal Signing in has a new glass look, and the code boxes centre their digits properly.
  • Site Book a demo is now a real form on the site that reaches us directly, replacing the email link.
  • Site The contact page shows the office in Subang Jaya on a map with directions.
  • Site The homepage phone mockup is a proper device that shows your actual time and date.
  • API A public demo request endpoint with rate limits delivers form submissions by email.

Certainty v1.8.0

  • Team workspaceClient portal A project you can see in the list but are not on now opens an explanation instead of an error. Ask for access with an optional note, see whether your request is still waiting or was declined, and ask again after a decline. Asking is capped at two attempts a day and five in total for the same project.
  • Team workspace Projects gained an Access Requests tab: who asked, their account and role, their note, and Approve or Decline with an optional reason. Approving adds the person to the project and to its support chat.
  • Admin panel The same queue is available on every project, under its own Access Requests tab.
  • Admin panel Roles gained an Access Requests resource controlling who sees and decides these requests. Client accounts never get it.
  • Team workspace A new request reaches everyone who can decide it, in the app, by push and by email, and the person who asked hears back the moment it is decided.
  • Team workspaceClient portal Being added to a project now tells you so, in the app and by push, with an email instead if push is not active on any of your devices.
  • Team workspaceAdmin panel Whoever creates an organisation or a project is a member of it from the start, without having to remember to add themselves.
  • Team workspaceClient portal Push notifications arrive faster and land where they belong. Opening one goes straight to the item it is about, and each chat keeps a single notification that updates in place with the latest sender and message instead of stacking one per line.
  • Team workspaceClient portal Coming back to a tab that was in the background catches the app up straight away, both the chat list and the notification bell, rather than waiting for the next check.
  • Team workspaceClient portalAdmin panel A change to what your role can do now reaches a page you already have open, with no reload. The dev and client apps apply it as it happens; the admin panel applies it when you come back to the tab.
  • Admin panel A role that people still hold can no longer be deleted. The number of holders is shown instead, so the role can be reassigned first.

Certainty v1.7.0

  • Client portal If push notifications are not active on any of your devices, status updates and new comments on your requests arrive by email instead, so nothing goes unseen. Turn this off with Email updates in Settings.
  • Team workspaceClient portal After the app updates, a short What's new dialog lists what changed in the release, once per version. This entry is the first one it shows.
  • Team workspace A new Error Log page under General records every server error with its stack trace, newest first, kept for 30 days. Reading is open to all engineers; clearing needs a senior role. The old error notification email is retired.
  • Admin panel Roles gained an Error Log resource controlling who can read or clear the log.
  • API Server errors are stored in the product instead of emailed to a fixed list, and the customer email fallback honors the account preference and skips anyone already reachable by push.

Certainty v1.6.3

  • Team workspaceClient portal Comment authors' profile photos now show in the comments feed on issues, feature/change requests and requests. The feed was looking up the photo by the comment's own id instead of the author's, so everyone fell back to initials.

Certainty v1.6.2

  • Team workspaceAdmin panel Attaching files larger than 1 MB works again, in support chat and in comments. An overzealous security filter was rejecting large binary uploads before they reached the product; uploads from the product's own apps now pass it.
  • Team workspaceClient portal The "new version available" prompt is gone. The app updates itself: an update found while the app is starting applies right away, and one found mid-session applies the next time you come back to the tab, never while you are typing.

Certainty v1.6.1

  • Team workspaceAdmin panel Sending a chat message with attachments no longer fails on slower connections: file uploads now get the same generous time limit as every other upload in the product.
  • Team workspaceAdmin panel Chat attachment limits are one rule everywhere now: up to 5 files, 20 MB per file, 50 MB per message, checked in the composer and enforced by the server.

Certainty v1.6.0

  • Team workspaceAdmin panel Maintenance and time tracking are one system now. The Maintenance tab shows the contract (monthly allowance, period, window) in every app; manual Log Hours is retired and old logs stay as read-only history. Spend is computed from tracked time.
  • Team workspace The project Time tab gains a maintenance card, this month's tracked time against the monthly allowance, with the item and person tables beneath as the usage history.
  • Client portal Projects that share time also show this month's usage against the allowance on the overview.
  • Team workspace Dashboard rows open the right page for every item type (feature/change requests and tasks 404'd) and the card is titled Assigned to me to match what it lists.
  • Admin panel Editing maintenance data no longer touches other projects' records.

Certainty v1.5.2

  • Team workspaceAdmin panel Time tracking copy reads "company timezone" instead of naming a country; same days, neutral wording.

Certainty v1.5.1

  • Team workspaceAdmin panel Budget alerts now reach engineers: the default recipient rules pointed at a role name that no longer existed, so the engineer share of the 80/90/100 percent alerts went to nobody. Role catalog aligned with the live role names.

Certainty v1.5.0

  • Team workspace Time tracking on tasks, issues and FR/CRs. Start a timer from the item page (one runs at a time, starting a new one stops the old), stop it in one click from the header pill, or log time by hand with a start/end or a duration. A man-day is 4 hours.
  • Team workspace Forgotten timers close themselves: 6 hours is the ceiling, and a closed tab stops counting at its last sign of life instead of the moment you notice. Auto-stopped entries wait in My Time for a confirm or a correction and stay out of every total until then.
  • Team workspace My Time shows each day's entries with their state, flags anything unconfirmed after 48 hours, and confirms a whole day in one click.
  • Team workspace Projects with a contracted man-day total get a Time tab: used vs contracted with a budget meter, per-item and per-person breakdowns, and time past the contract kept in a separate overage bucket that an admin acknowledges. Alerts go out once each at 80, 90 and 100 percent, respecting working hours for push.
  • Team workspace Closing an issue can record why it existed (our defect, spec ambiguity, client environment, third party), which feeds a rework breakdown on the Time tab.
  • Client portal When a project opts in, the client portal shows total man-days and a per-item rollup. Off by default, never per-person.
  • Admin panel Edit project sets the contracted man-days and the client visibility toggle; alert recipients are configurable per threshold.
  • Agents start_timer, stop_timer, log_time, get_current_timer and get_time_summary, with a 2 hour ceiling on assistant-started timers.
  • Admin panel Fixed toggles that flipped visually but never saved (switch component regression).

Certainty v1.4.0

  • Team workspaceAdmin panel AI auto-triage of client requests via the sort API: clear agreements auto-file, everything else is held for a human with the AI's reasoning attached; sorted-by-AI provenance on filed items and a held queue tile in the team workspace.

Certainty v1.3.1

  • Team workspaceClient portal plain-text descriptions (MCP-created items) now render with their paragraphs and lists instead of one run-on block, on the item page, in the edit dialog, and in every history version. Editing one no longer welds its lines together, and Quill bullet lists show as bullets.
  • Team workspaceClient portal The comments feed is a fixed-height scrollable box; the item page fits the viewport, the composer stays visible, and posting scrolls to the new message.

Certainty v1.3.0

  • Team workspaceClient portalAPI Titles and descriptions are editable after creation on issues, feature/change requests and requests. Every previous version is kept, never overwritten: an "edited" marker with a count, a history dialog showing any version, and the original always reachable. Edits made over MCP land in the same history.
  • Team workspaceClient portalAPI Visible audit trail on items. Who changed what and when (status, priority, privacy, assignee, due date, title, description, creation, conversion, deletion) with old and new values and the source (web or MCP), interleaved with comments as one timeline. Clients see a reduced trail: never privacy flips, priority or module changes, and nothing on internal items.
  • API request-to-issue/FRCR conversion now carries the full edit history and activity trail to the new record.
  • API update_frcr and get_frcr now advertise frcr_id (matching the tool names); the old fr_cr_id keeps working as a silent alias.
  • Team workspaceClient portal Item mentions in support chat work again. The hover preview was rendering off-screen since the chat redesign; it is repositioned, and clicking a mention now opens the item directly (which also makes mentions usable on touch).
  • Team workspaceClient portal Opening a deleted project, org or task no longer stacks error toasts on top of the not-found page.
  • Client portalTeam workspaceAdmin panel The module switcher is reachable on mobile. The drawer footer was hidden behind the browser toolbar (h-dvh fix), the client drawer gained the same switch button the desktop rail has, and the admin mobile menu now has a switcher at all.
  • Team workspace The request form no longer claims titles and descriptions cannot be edited after submission.

Certainty v1.2.3

  • Site v2 marketing design on all pages, full feature coverage (MCP flagship, GitHub, notifications, install/PWA with mobile-apps roadmap), dot-matrix hero, dark/light toggle, now served at the apex certainty.is.
  • Site Safari fix, hero dot-matrix canvas never rendered (WebKit silently rejects system-ui in canvas font shorthand); all render gates hardened with fallbacks.
  • Team workspaceClient portalAPI Support chat rows and the open-chat header now show the owning organization (left-joined org name; ad-hoc rooms unaffected).
  • Team workspaceClient portalAdmin panel Dark mode, native text/date/textarea/select inputs were rendering white (Tailwind preflight + missing color-scheme); themed centrally in the base layer, placeholder contrast fixed, hardcoded light utilities in admin modals corrected.

Certainty v1.2.2

  • Team workspaceAdmin panel Dropdowns, selects, and tooltips land in the right place with text size set to Large or Small (the notification bell no longer opens off-screen).

Certainty v1.2.1

  • Team workspaceAdmin panel Admin Users list shows 8 per page, matching the Roles list.

Certainty v1.2.0

  • Team workspaceAdmin panel FR/CR pages no longer go blank on records without a privacy setting; "Mark as a Change Request" now lands you on the new record.
  • Team workspaceAdmin panel Every modal fits the screen and scrolls, the role-permissions Save button is always reachable, and dropdowns inside modals stay clickable.
  • Team workspaceAdmin panel Role names keep the casing you typed ("Senior SWE", not "senior_swe") across the admin panel.
  • Team workspaceAdmin panel Notification bell panel no longer cut off on narrow screens.
  • Team workspaceAdmin panel Org cards show up to 8 member avatars (was 4); admin Roles list shows 8 per page (was 5).
  • Team workspaceAdmin panel Dashboard task table scrolls sideways on phones instead of crushing its columns.

Certainty v1.1.0

  • Team workspaceAdmin panel Title/description edit history for issues, FR/CRs, and requests, every version kept, from web and MCP alike.
  • Agents list_project_items, update_issue/update_frcr (due date, closing reason), due dates on create tools.
  • Team workspaceAdmin panel One assignment contract (assignees) across web, MCP, and every app; legacy fields still accepted.
  • Team workspaceAdmin panel Comments open on requests before triage, with file attachments.
  • Team workspaceAdmin panel Client module: delete request fixed, rich detail sidebars with closing reason, file downloads fixed, three-state pages (loading / content / not found).
  • Team workspaceAdmin panel Uploaded profile photos now show everywhere; stale-avatar window closed.
  • Team workspaceAdmin panel Support Chat: long-press message actions on mobile, missed deletes/edits recovered on reconnect.
  • Team workspaceAdmin panel Filters rebuilt on all trackers: search box, direct dropdowns, one-tap stat tiles; tile counts no longer change under filters (and two swapped counters fixed).
  • Team workspaceAdmin panel Notifications route to their target on click (bell, toast, and page).
  • Team workspaceAdmin panel Mobile: PWA install prompt, pinned navbar on all engines, Large-text layout fixed, action menus visible above drawers.
  • Team workspaceAdmin panel Emails redesigned to match the apps.
  • Team workspaceAdmin panel MCP connect flow returns to the approval page after sign-in.
  • Team workspaceAdmin panel New notification sound; marketing site renamed to Certainty HelpDesk.

The apps show you this list themselves, once, after they update.

Updates apply on their own: one found while an app is starting takes effect immediately, and one found mid-session waits until you come back to the tab. Nothing to accept, and nothing to refresh.

See the features Read the guide
Next

See where it is going next

The list above is what has shipped. A call is where you find out what a deployment for your team would turn on, and what we are working on after this.

partnerships@dhcertainty.com