Sub-jobs are optional: on a job with sub-jobs turned on, leave the Sub-job field on No sub-job for a normal day, and name each DOR only on a day with more than one.
The office can turn sub-jobs on for a job before any exist; supervisors then add them from the DOR form as they need them.
v1.22.1
· 2026-10-05
Manage Jobs: a search box above the list finds jobs by number, name, location or client as you type.
Manage Jobs: click a column heading (Job Number, Name, Location, Start Date, Status) to sort by it; click again to reverse.
The detailed job filters are folded under More filters, and open on their own when one is in use.
Sub-jobs: supervisors can add a sub-job right from the DOR form (Add sub-job, under the Sub-job dropdown) on jobs the office has turned sub-jobs on for. Turning sub-jobs on or off, retiring and deleting stay on Manage Job.
Reports: the Sub-job filter has a No sub-job choice, for a job's DORs filed before it used sub-jobs.
The DOR form fits a phone screen: fields no longer run off the right edge, and the top fields sit two to a row.
v1.22.0
· 2026-10-05
Sub-jobs: a job can now file one DOR per sub-location each day. An admin turns on Sub-jobs for the job on its Manage Job page and adds its sub-jobs (01, 02 and so on, each with an optional label like Building A).
On a job with sub-jobs, every new DOR picks a sub-job and shows as 26-073-01 on the form, the dashboards, Reports and the PDF. Job totals still add up to 26-073, and safety paperwork stays one per job per day.
Reports: when a job has sub-jobs, Reports offers a Sub-job filter (Batch PDF Export follows it), and the job summary and employee hours reports show 26-073-01.
The DOR submission rate counts days, so a job filing three sub-job DORs a day still reads 100%, not 300%. The weekly submissions report and the safety status board count a job's sub-job DORs together as one day.
Jobs without sub-jobs work exactly as before.
v1.21.9
· 2026-10-03
Photos, Recent photos tab: grouped by day, then one card per job and person ("Dan Kresge, 39 photos, 8:56 to 9:12 AM") with previews and an Open folder button, instead of one row per photo.
v1.21.8
· 2026-10-02
Photos: fixed "That job no longer exists" on 26-078. Its job number had been saved with a space at the end. Photos stuck with that message upload again the next time the photo screen is opened.
New job numbers are saved without stray spaces.
v1.21.7
· 2026-09-30
Photos, Job folders tab: every linked job now shows its folder, including the parent folder when it sits one level down (for example _Emergency Projects - ETOWN / 26-073).
v1.21.6
· 2026-09-30
Picking a job's photo folder: click Open on any folder to see what's inside and link a folder one or more levels down (for example a job inside _Emergency Projects - ETOWN).
Jobs whose folder sits inside one of the _ folders now get a Suggested folder too, and clearing the search lists every Projects folder.
v1.21.5
· 2026-09-30
Adding a job no longer links its photo folder by itself. The job page marks the matching SharePoint folder as Suggested so you can check it and click Link.
Photos for a job without a folder wait safely in the holding folder and move in as soon as the folder is linked.
v1.21.4
· 2026-09-30
Photos: picking a lot of photos at once shows "Preparing photo 7 of 40" and starts uploading right away. Photos that can't be read are counted and explained instead of disappearing.
Photos: one photo SharePoint won't take no longer holds up the rest, and a stalled upload retries by itself.
Photos: if a job's SharePoint folder is deleted or moved, its photos wait safely in the holding folder until the job is relinked.
The app handles several phones uploading photos at once without slowing down for everyone else.
v1.21.3
· 2026-09-28
Field Photos opens with a big Take photos button and the latest photos. Job folders, including jobs that still need one, moved to their own tab.
The Install button on the photo screen now says how to add it by hand if your phone doesn't show the install box, and the menu has an Add to home screen guide.
v1.21.2
· 2026-09-24
Admins have a Reports menu again, with Payroll, Drafts, Employee Hours and every other report that's switched on in Feature Settings.
v1.21.1
· 2026-09-24
Text boxes, dates, dropdowns and buttons that sit side by side are now all the same height, across the whole app.
Dropdown text no longer runs under the arrow.
v1.21.0
· 2026-09-24
Safety has one set of tabs for everyone: Fill out forms, My forms, and, for supervisors and up, Status board and All forms.
Supervisors can now see the Status board and All forms. Unlocking days, ignoring missing forms, importing and exporting stay with admins.
Filling out a form is always the first tab, so admins no longer have to find the small File a form button.
Clearer wording on the Status board: "Daily inspections done", "Missing daily inspections", "Days with no forms", "Reopen day".
Each Safety page now says what it's for under its title.
v1.20.3
· 2026-09-24
Browser tabs now say Daily Operations.
Field Photos has its own card on the module screen for people who can use it.
v1.20.2
· 2026-09-24
Tidier top menu: it stays on one line, uses the full width of the screen, and folds into the menu button on smaller screens.
"Manage" is now "Admin", grouped into Job setup, People and Records. The Changelog is now called Activity Log.
The Scafar logo is now in the top bar.
Safety sits under a new Field menu when there's more than one field tool.
v1.20.1
· 2026-09-24
Small behind-the-scenes updates.
v1.20.0
· 2026-09-24
Behind-the-scenes groundwork for an upcoming feature.
v1.19.3
· 2026-09-22
Employees, equipment and subcontractors now stay in the order you entered them when you reopen a saved draft or edit a DOR.
v1.19.2
· 2026-09-13
Open the matching DOR beside Ignore on a no-paperwork flag to review the crew and work notes before deciding what to do.
v1.19.1
· 2026-09-13
Simplified the Safety screens.
v1.19.0
· 2026-09-12
Improved how existing Safety records are matched and preserved.
v1.17.1
· 2026-09-02
Safety Forms and the safety dashboard are now always available to administrators. The Safety Forms Module switch continues to control foreman access only.
v1.17.0
· 2026-08-30
Safety Records now has a calendar view — flip the new Table | Calendar switch to see the month at a glance, one chip per job per day: green means the inspection was filed, red means forms were filed but the inspection is missing, dark red means the crew worked with no paperwork at all. Click a chip to open that day.
The wipe-safety-data button moved off the Compliance page into a Danger zone on the CSV import page, next to the test-import workflow it exists for.
v1.16.0
· 2026-08-30
The Safety module now gives each role its own pages. Administrators get two tabs: Compliance — the compliance number up top, one “Needs action” list combining unlock requests, missing inspections, no-paperwork days and reopened days (each with its action right on the row), and the trend charts — and Records, where the full activity table, filters, imports and exports now live.
Foremen get two tabs of their own: Today — pick your job, see which of today’s forms are filed and which are still open, with any day an administrator sent back pinned at the top with their note — and My History, your own last 14 days with a status on each day.
The Records table now uses short column codes (DSI, CS, VEH, T&E, EQ) with a legend underneath, instead of five identical truncated headings.
Administrators filing a form use the new “File a form” button on the right of the tab bar.
v1.15.1
· 2026-08-29
One Daily Safety Inspection now covers the whole job for the day, whoever filed it. When two crews share a job, the second foreman is no longer flagged as missing an inspection their co-foreman already filed — on the dashboard, on the day’s detail page, and on their own to-do list.
v1.15.0
· 2026-08-29
You can now reopen a day straight from the Safety Dashboard. Any day flagged for a missing Daily Safety Inspection has a “Reopen” box next to it: type what needs fixing, and the day is unlocked for that foreman with your note attached. Previously the only unlock button was in the queue of days a foreman had asked about, so gaps nobody asked about could be seen but not acted on.
The same Reopen action is on the day’s detail page, alongside “Ignore this flag” — reopening it so it gets fixed, or ignoring it, side by side.
v1.14.1
· 2026-08-29
When an administrator reopens a closed day, the foreman can now actually add the missing form to it. Previously a reopened day would let them correct forms that were already there but refuse any new one — including the Daily Safety Inspection, which is usually the reason the day was reopened.
A reopened day now tells the foreman why. The note the administrator types when unlocking is shown on the day itself and in a “Reopened for you” list on the Safety home page; before, they only saw that the day was open and had to guess what needed fixing.
v1.14.0
· 2026-08-29
The Daily Safety Inspection is now the first form column everywhere it is listed — the dashboard activity table and its export, the tags on each row, the form list on a day, and the Safety home tiles. It is the form required every day, so it no longer sits last behind the situational ones.
Safety now has tabs across the top of every page instead of a dropdown in the menu bar. You see only the tabs you can open: foremen get Fill Out Forms and My Activity, admins also get Dashboard and All Forms.
v1.13.2
· 2026-08-29
Opening Safety Forms from the module screen now takes admins straight to the Safety Dashboard instead of the “pick a job” screen. Foremen still land on the job picker, and admins can still fill out a form from Safety → Fill Out Forms.
v1.13.1
· 2026-08-29
Removed the “Modules” button from the top bar — it crowded the header and went somewhere you can already reach: the Dashboard link takes anyone who has both DOR and Safety to the same module picker.
Safety Forms can now be opened for named individuals while it stays switched off for everyone else, so someone can help test the module without it appearing for every supervisor and admin at once.
v1.13.0
· 2026-08-28
The Safety Dashboard is back to the summary tiles, charts and activity table it had before. The per-job day-strip view introduced in the previous release has been removed.
“Jobs Covered” now reads as a fraction, like “3 of 4”, and counts jobs with nothing outstanding. It used to count every job on the list, so it went up when a job filed nothing all week — the wrong direction.
“Active Foremen” now includes people whose records came in from the old MS Forms exports. Those have no matching login, and were being left out of the count entirely.
The activity table still fits on the screen: the last form column no longer runs off the right-hand edge, and a long job name no longer stretches a row over six lines. Anything shortened shows in full when you hover it.
v1.12.0
· 2026-08-28
The Safety Dashboard now opens on one question: which jobs are behind. Each job gets a row with a square per day — green if the Daily Safety Inspection was filed, red if it was not, faint if nobody worked that day — with the worst jobs at the top.
The headline is now a fraction you can check, not a bare percentage: “11 of 18 job-days had a Daily Safety Inspection”.
Days nobody worked are no longer counted against you. The old percentage had no stated denominator, so there was no way to tell what it was out of.
Days you have dismissed are still counted as filed, but the number is now shown separately instead of quietly raising the score.
Today is never counted as missed. It shows as still open until it locks at midnight.
The seven summary tiles are gone. Two of them were misleading — “Jobs Covered” actually counted jobs with no paperwork at all, and “Active Foremen” left out the foremen who filed nothing.
The day-by-day table and the charts are still there, tucked under “All activity” and “Trends and totals”, since they carry the per-form detail the new view leaves out.
That table now fits on the screen. The last form column used to be cut off the right-hand side, and a long job name could stretch a single row over six lines. Names that are too long are shortened with the full text on hover.
v1.11.0
· 2026-08-28
Safety records can now be exported as PDFs, from the Export menu on the Safety Dashboard. Three kinds: a compliance report for the dates you have filtered to, every form and photo for one job as a single document, and any single day on its own.
The whole-job PDF is the one to hand an inspector, a GC or an insurer — a cover sheet listing every day on the job, then each day's forms and photos in order.
Every row in the activity grid has a PDF button for that day.
Photos are included in the PDFs at full size.
If a photo can no longer be found on the server, the PDF says so in its place rather than leaving a silent gap, and the job cover sheet totals how many are affected. Photos uploaded before a permanent storage volume is attached are lost on each redeploy — this is what that looks like in an export.
The cover sheet also counts the days on the job that have no Daily Safety Inspection, so what is missing is stated as plainly as what is there.
The Export button is now a menu and says which format each option is; the whole-job PDF appears once you have picked a job in the filter.
v1.10.0
· 2026-08-28
The Safety dashboard now reads the daily reports to work out which days a crew was actually on a job, and flags any of those days where no Daily Safety Inspection was filed.
Days where nothing safety-related was filed at all used to be invisible — no row, no warning, nothing. They now show up as “No paperwork”, with who filed the DOR and how many people were on the crew, so you know who to ask.
Because those days now count, the Compliance percentage will read lower than it used to. It was only ever measuring days that already had paperwork, so the old number flattered the worst days. The new one is the real figure.
Today is never flagged. A day only counts as missed once it has locked at midnight and the foreman can no longer file it.
A day with no crew on it is not counted either — a report with only equipment or subcontractor hours, or one marked “no work performed”, does not need an inspection.
Gaps can be dismissed and restored exactly like before, and a dismissed day drops out of the count.
The job filter now lists jobs that have work reported but no safety paperwork — previously the jobs you most wanted to look at were the ones you could not select.
The Safety CSV export gained crew size and a column marking the days with no paperwork at all.
v1.9.1
· 2026-08-28
Safety now has its own menu in the top bar. Filling out forms, your own safety activity, and (for admins) the Safety Dashboard are all one click away instead of buried behind a small Admin button inside the safety pages.
Fixed: saving the Feature Settings page silently switched the whole Safety Forms module off. The page wrote that setting every time you saved but never showed a switch for it, so supervisors and admins could lose access to safety forms just by changing something unrelated. There is now a proper switch, labelled so it is not confused with the “Safety” notes box on the DOR.
The Modules link in the top bar is no longer superuser-only, so admins and supervisors can move between the DOR and Safety themselves.
v1.9.0
· 2026-08-28
The Confined Space list now imports. All 544 rows were being rejected because the export spells the date column “Todays Date” without an apostrophe, so the importer never found a date on any row.
Trenching & Excavation import: ten more columns now land in the right question, including the ones the list spells differently or without a question mark, and the older copies SharePoint kept when the form was revised.
Photos now upload one at a time, as soon as you pick them, instead of all together when you tap Save. Sending one photo over a weak signal works where sending ten at once did not — and a photo failing no longer takes the whole form down with it.
A photo that does not go through keeps retrying by itself, and goes up the moment your signal comes back. Each one shows whether it is waiting, sending or saved, with a Remove button if you picked the wrong one.
Photos stay put if you close the form, lose the page or your phone kills the browser. Open the form again and they are still listed, still uploading.
You can save a form with a photo still going up. It asks first, and because the day stays open until midnight you can come back and let it finish.
If the connection drops while saving, the form no longer wipes itself — your answers stay on screen and you can just tap Save again once you have signal.
Daily Safety Inspection is 10 questions shorter. The hazard questions — trenching, traffic control, confined space, crane, electrical — used to be repeated at the bottom of every section, so electrical was asked five times and crane four. They came from the paper form, where you jumped between sections and needed reminding. Each is now asked once.
Those repeats also did nothing: answering “yes” to one never opened the matching checklist, and it could disagree with your first answer with nothing catching it.
Trenching & Excavation: answering “No” to "Was Trenching & Excavation Performed Today?" now hides the "Greater Than 5'" question instead of demanding an answer to it. That question also had to be answered before, which let the form record trenching deeper than 5' on a day with no trenching at all.
Trenching & Excavation: "Was Trenching & Excavation Performed Today?" is now required. Leaving it blank used to collapse every section below it and let the form save as little more than a date and a job number.
Confined Space: "Was A Confined Space Form Filled Out?" and the photo of the form only appear once you say confined space work was performed.
Changing your answer to one of these questions no longer wipes the answers underneath it. Tap the wrong button on a gate like "Is there a crane on the job site?" and the answers come back when you tap the right one.
Job Number now sits with the date at the top of the Trenching form rather than in the middle of the two trenching questions.
v1.8.2
· 2026-08-28
The remove (X) buttons on the Edit DOR screen now match the ones on the New DOR screen. The equipment and subcontractor rows used a different, larger red button than the phase note rows right below them on the same page.
The Create User, Change Password and Become Superuser pages had oversized titles compared to every other page, and two were missing their icon. All three now match.
v1.8.1
· 2026-08-28
Deactivated users on the Manage Users page were shown as a pale white stripe with their timezone almost invisible against it. Those rows are now a subtle dark highlight, so you can still tell them apart and actually read them.
The section and total bars on the Job Cost Summary report were dark text on a dark bar — effectively unreadable. They now show as a clear light-on-dark band.
Failed rows on the Automated Tests page had the same washed-out problem and now show a readable red tint.
v1.8.0
· 2026-08-28
The "Save as Draft" button on the Edit DOR screen did nothing at all when clicked — no error, no save. It now saves your changes and leaves the DOR as a draft, and only appears when you are actually editing a draft.
Removed a duplicate "Reset Form" button on the Edit DOR screen; there were two buttons doing the same thing in different colours.
Summary tiles on the dashboard, analytics and the report pages now share one look — a clean panel with a coloured edge — instead of a mix of solid colour blocks and flat grey ones sitting side by side in the same row.
Job numbers now show in the same colour everywhere. They previously appeared in three different colours depending on which screen you were on.
Role, timezone and job status dropdowns were missing their arrow and used the wrong list colours. Fixed.
The remove (X) buttons on timesheet rows now announce what they remove, for anyone using a screen reader.
Made "no results" messages consistent across the app, and fixed washed-out table headers on the Payroll Export report.
The Export to CSV button no longer looks like a green confirmation button, and the permissions page uses proper icons instead of tick and cross characters.
v1.7.2
· 2026-08-28
Outline buttons across the whole app were missing their outline — they rendered as plain text with no border. They now look like proper buttons everywhere.
Job number tiles on the dashboard were white text on a white background and effectively invisible. They now read clearly, along with a few other light-coloured panels that had the same problem.
The subcontractor and equipment tables on the DOR screens no longer cut off their last columns on a tablet or a narrowed browser window — they scroll sideways at every screen size instead.
On a phone, buttons that should sit side by side in a table row or a toolbar were each stretching to the full width of the screen. Only the DOR action bar does that now, which is where it was meant to happen.
Dropdowns now show the company blue highlight when selected, matching the boxes next to them instead of the default blue.
Rounded corners are now consistent across buttons, cards, panels and menus rather than drifting slightly from screen to screen.
v1.7.1
· 2026-08-28
Redesigned the Safety Admin Dashboard with a cleaner, more modern look — new KPI cards with color accents, smoother charts, refined filter bar, and improved table styling throughout.
v1.7.0
· 2026-08-27
Employee names on the safety forms now come from your employee list instead of a fixed list copied off the old paper forms. Add, rename or deactivate someone under Manage Employees and the safety forms follow immediately — no more out-of-date names.
Foreman Name offers employees with the Foreman role, and Superintendent Name offers Supervisors. Crew, equipment operators and the safety rep offer everyone active, since there is no matching role for those yet.
Opening an older safety form still shows whoever it originally named, even if that person has since left, so old records can still be corrected and saved.
If nobody has the matching role yet, the form falls back to the full employee list rather than showing an empty dropdown you cannot get past.
Every one of these name fields keeps an "Other" box, so a subcontractor's foreman or a visiting safety rep can still be written in.
v1.6.2
· 2026-08-27
The Safety Forms job picker is much faster on a phone or tablet. The jobs you have been on recently now sit at the top as big buttons, so the usual case is one tap instead of scrolling past every job in the company.
Added a search box to the job list — type part of a job number or name to jump straight to it. If only one job matches, pressing Enter opens it.
The full job list is now tucked behind "Show all jobs" once you have recent jobs, so the page opens short instead of as a long scroll.
Picking the day is now one tap: Today is already selected, with Yesterday next to it and an "Other" button for backfilling an older date.
Fixed the Safety Forms screens on phones. Buttons were being stretched to full width, which squashed the form list and wrapped question labels one word per line, and the heading that stays pinned at the top was see-through so questions scrolled over it.
v1.6.1
· 2026-08-27
Safety: Daily Safety Inspection exports downloaded from SharePoint can now be imported. Every row in those files used to be rejected, so an import finished having added nothing.
Safety: the import Preview (dry run) no longer saves anything. It previously wrote the records it was only meant to show you, and created day packets for them.
Safety: more columns from the SharePoint export now land in the right question, including the ones the export misspells and the hazard questions that open the Trenching, Traffic Control, Confined Space, Crane and Electrical sections.
v1.6.0
· 2026-08-27
Safety Forms now works a day at a time. Instead of picking a form from a list, you choose a date and a job, then see every safety form for that day in one place and fill in whichever ones apply.
Nothing in a day is required. Crews don't work every job every day, so skip the forms that didn't happen.
You can now edit a safety form after saving it. Previously a form could only be filed once and never corrected.
Switched jobs mid-day? Go back to the day/job picker and choose the second job. Each job gets its own set of forms for that date, and both stay visible.
A day's safety paperwork locks at midnight. Until then you can keep editing it; the form now shows a countdown so the deadline isn't a surprise.
If a day is already locked, you can request an unlock from the page itself. Administrators see the requests in a queue on the Safety Admin page and can reopen the whole day, with the reason recorded.
Every safety edit and unlock is now recorded in the Changelog, so who changed what and when is answerable.
Safety Forms can now be used by supervisors and admins, not just superusers. It stays switched off until an administrator enables "Safety Forms Module" under Feature Settings.
The job list in Safety Forms now shows only the jobs assigned to you, rather than every job in the company.
Long safety forms are easier to fill in on a tablet: a progress bar shows how many questions are left, the job and date stay visible while you scroll, and your answers are saved on the device as you go, so losing signal no longer loses the form.
If you miss a required question, the form now jumps straight to it instead of reloading from the top and dropping the photos you had picked.
Photos are automatically resized before uploading, so filing a form on a slow site connection is much faster.
The Save button now disables itself while saving, so an impatient second tap can't file the same form twice.
Crew Size now opens the number keypad on phones and tablets.
You can now remove a photo you attached to a safety form by mistake.
The Safety Admin page now warns if uploaded photos are not being stored durably, so photo loss is visible before anyone relies on it rather than after.
v1.5.0
· 2026-08-27
Super administrators can now preview the app as another role: pick "View as" in the top menu to see exactly what an Admin, Supervisor or Worker sees.
While previewing, a banner across the top shows which role you are viewing as, and the app stays read-only so nothing can be changed by accident.
Click "Exit simulation" in the banner (or log out) to return to your normal super administrator view.
v1.4.2
· 2026-08-24
Submitting a daily report no longer warns that every employee is missing a Phase or Cost Code when the combined Phase / Cost Code dropdown is already filled in. The warning now only appears for rows with hours that genuinely have no selection.
v1.4.1
· 2026-08-11
The company-wide reports (Employee Hours, Job Cost Summary, Weekly Summary, Overtime, Equipment Utilization, Subcontractor Summary and Phase Progress) are now admin-only in fact, not just hidden from the menu. Supervisors are sent back to the dashboard if they open one directly.
Batch PDF export now covers only the jobs assigned to you unless you are an admin, so a supervisor can no longer export every job in the company.
Downloading a daily report PDF now requires that the job is assigned to you. Supervisors can still download PDFs for their own jobs.
Saving a daily report as a draft now checks job access. Supervisors can only save drafts for jobs they are assigned to; admins are unaffected.
The "Load Previous Entry" button now only returns report data for jobs you have access to.
"Submitted By" on a daily report is now filled in from your account and shown read-only, so the name saved always matches who entered it.
v1.4.0
· 2026-08-11
Everyone is signed out once after this update. Changing a password (yours or via Manage Users) now also signs out any other open sessions for that account.
Editing an old DOR no longer silently erases a row's Phase or Cost Code when that value was later removed from the job — it now shows as "(Deleted)" and is kept on save.
Hours are now checked when saving: negative values are rejected, and employee hours over 24 per day are blocked.
New jobs now start with the classic separate Phase and Cost Code lists; the combined dropdown is enabled per job from the Manage Job page.
Payroll reports and exports no longer include hours from deleted jobs, and analytics no longer count unsubmitted drafts.
Batch PDF export now warns when a date range has too many timesheets instead of silently exporting only the first 100; merged PDFs are now in date order.
The weather box now uses the selected job's location instead of defaulting to New York.
Job cost reports now show the cost code description, so identical codes with different descriptions are listed separately.
Employee CSV backup/restore now keeps active/inactive status — a restore no longer reactivates deactivated workers.
Saving a draft now warns if someone else changed the same DOR in the meantime, and drafts, user changes, and CSV imports now appear in the audit changelog.
v1.3.1
· 2026-06-19
Fixed a false "missing Phase or Cost Code" warning that appeared for equipment when editing a completed daily report (for example, after unlocking it to make a change). Equipment no longer needs a phase/cost code, so editing now saves without the warning.
v1.3.0
· 2026-06-11
You can now Archive a finished job to clear it out of the dashboard and the daily report job list — without deleting it.
Archived jobs stay available in Reports (and still appear in past report data), so nothing is lost.
Archive or unarchive a job from Manage Jobs (or a job's page); archived jobs stay in the Manage Jobs list with an "Archived" badge, and a new Archived filter lets you show active-only or archived-only jobs.
v1.2.4
· 2026-06-11
Fixed a false "missing Phase or Cost Code" warning that popped up for equipment when submitting a daily report — equipment no longer needs a phase/cost code, so the report now saves without the warning.
v1.2.3
· 2026-06-10
Vehicles & Equipment on new daily reports now only tracks the equipment and hours used — the Phase and Cost Code fields were removed from the equipment section.
Daily reports entered before this change keep their equipment Phase/Cost Code everywhere — when editing, on the report screen, and in the PDF.
v1.2.2
· 2026-06-10
Fixed dashboard page buttons, the favorites filter, and job history expansion kicking superuser accounts back to the module picker.
Fixed admins being blocked from editing their own account in Manage Users.
The Manage Users save message now says whether a password change was applied, and the edit form blocks browser autofill from interfering with the username/password fields.
Logging in to a deactivated account now says so instead of "Invalid username or password".
Internal: the timesheet entry script was reorganized into six focused files (no behavior change).
v1.2.1
· 2026-06-10
Fixed timesheet rows keeping the old two-dropdown Phase/Cost Code layout after selecting a job that uses the combined dropdown (and vice versa) — all rows on the page now switch layout and keep their entered values.
Equipment, Subcontractor, and Work Performed Notes table headers now show a single "Phase / Cost Code" column for jobs using the combined dropdown.
Upgrading a job to combined phase/cost codes without attaching a CSV is now blocked when the job has no combinations yet, preventing an empty dropdown on the entry screen.
v1.2.0
· 2026-06-09
Fixed editing a timesheet wiping the cost code description, phase note tags, and Project Management notes that were entered when the report was first submitted.
Fixed the Phase Progress report erroring out when a date range was applied.
Fixed sorting the reports table by Employee Hours or Equipment Hours showing an empty list.
Payroll, cost, overtime, equipment, and subcontractor reports no longer include hours from unsubmitted drafts or jobs that were moved to trash.
Weekly summary and compliance reports now include admin-unlocked timesheets instead of dropping them.
Fixed cost code descriptions being dropped from loaded/previous entries and from rows containing a double-quote.
Fixed the combined Phase / Cost Code dropdown keeping the previous job's options after switching jobs, and showing false "missing phase / cost code" warnings on a fully filled row.
Fixed "+ Add New Subcontractor" failing silently from the timesheet screen.
Fixed phase descriptions not appearing on exported timesheet PDFs.
Fixed importing jobs in replace mode leaving every job hidden in trash, and re-adding a trashed job not restoring it.
Fixed re-saving an existing phase failing with an error.
Adding a subcontractor that already exists no longer overwrites the existing record.
Safety dashboard: each foreman's daily inspection is now tracked separately so a missed inspection can't be hidden by another foreman's submission; "today"/this-week now follow your timezone; and safety CSV imports no longer drop earlier rows when one row fails.
Hardened account security: only superusers can edit or change the role of superuser/admin accounts, and the "remember me" login cookie is now marked secure.
v1.1.1
· 2026-06-09
Fixed a bug where typing to search inside the combined Phase / Cost Code dropdown could clear the picked combination, saving the entry with a blank phase and cost code.
v1.1.0
· 2026-06-09
New "combined" phase/cost-code entry: jobs can use a single dropdown of valid Phase / Cost Code / Description combinations instead of two separate dropdowns, so invalid pairings can't be entered.
Manage a job to upload combinations (Phase, Cost Code, Description CSV), preview the impact before applying, and turn combined mode on or off. New jobs use combined mode by default; existing jobs are unchanged until upgraded.
Old or carried-forward entries with a combination that's no longer on the list are kept and shown with a "⚠ legacy" flag — they still save and stay editable.
v1.0.0
· 2026-06-09
Added an in-app version number next to the logo. Click it to see what's new.
"Dedicated to Reggie: Thanks for the mostly silent supervision while I built this app. <3"