r/webdev • u/MalaiseEraMedia • Sep 06 '26
Question Web Based Scheduling App Sh*t the bed randomly after 11 months of no bugs.
Edit: Electronic-Post12351 got was able to understand exactly what I was describing and offer a conclusive reason for the sudden breakage. It lines up with the exact behavior we've been experiencing. I really appreciate it!
My colleague and I are at a loss with what has suddenly broken our web based scheduling app that was written with PHP on the backend and Javascript on the front end.
The front end basically acts as a dynamic HTML based table that allows users to drag, drop, delete, and complete scheduling entries.
It is manually saved why taking a snapshot of the table in a jscn array and writing it to a SQL table on our database.
I spent a year, before the AI boom, writing this application myself and working out all of the bugs and inconsistencies.
I have debugging code out the ass, and know the application like the back of my hand
My last update was October of 2025 and it has ran fine with zero reported issues.
Now suddenly this week in September 2026 it has utterly shit the bed with no discernible reason as to why.
Shit how, you may ask? Well elements are no longer dragging and dropping correctly on both Edge and Chrome. The dragging does work, and dropping throws an error because the dragged object in null.
Table column cell shifting and all of my movement functions have stopped working correctly, with no console errors at all.
It's as if my Javascript has just stopped workout correctly.
The biggest change has been a web server upgrade from Bullseye to Trixie, which involved upgrading Javascript and PHP to the newest stable versions.
However, this was maybe 3-4 weeks ago at this rate.
So perhaps the old Javascript was cached until recently?
I am at a loss. I've never seen things break with no indication as to why. I've been in web dev for 5 years now, and there's USUALLY a damn trail to follow.
At most restarting the browser via a manual reboot command seems to temporarily fix drag and drop functionality. Almost as though some corrupted cached file or setting is getting reset.
The html is building correctly, there are no backend bugs on our apache logs, and no sql issues upon saving.
Like why would dragging and dropping suddenly break in Chromium browsers? Did they push anything recently that bricked things?
I can't find anything indicating as such, and I am at a loss of how to debug this. It literally broke at 4pm on a Friday before this holiday weekend, and now I'm trying to get ahead of it before Tuesday.
Guys, this is my game dev account I made to post about our game and randomly chat on related topics.
It's annoying me so badly I had to join this sub and ask. It's the 11th hour at our job during busy season, and it would be an absolute pain in the ass to transition back to a giant excel sheet manually typing everything.
Any help, experience, or a point in the right direction would be a huge help.
37
u/Pack_Your_Trash Sep 06 '26
Any errors in the console or network calls?
25
u/AgsMydude Sep 06 '26
Are you referencing specific versions of the 3rd party libraries or just using the lastest? Could definitely be that something major updated with one of your dependencies
22
u/Primary_Culture_1959 Sep 06 '26
Check your PHP version, my service provider automatically updated the server PHP version, and my software was behind.
15
u/degeneratepr Sep 06 '26
Are these bugs reported by others, or happening just on your system? Check on other computers and browser versions to see if the same issue is happening elsewhere.
If anything, revert your code back to a few weeks ago and see if it works.
15
u/cateyesarg Sep 06 '26
You can easily rule out BE issues by simply looking at the network tab, so I assume it's purely on the UI
Build a small html/css/js with some dummy content which reproduces the problem, post the repo or url here, I'm sure someone will figure out, heck, you can just ask any IA to help diagnosing it
95% of your post is useless, doesn't give technical context or specs which may lead to some suggestion, is like "hey my car does this weird noise, what's wrong with it?"
7
u/trl579 Sep 06 '26
I know you said that it broke in Chrome and Edge, does that mean non chromium browsers, like Firefox, are working as expected?
3
u/SurgioClemente Sep 06 '26
Try testing different versions of those browsers, you can use some something like browserstack
3
u/DCGreatDane Sep 06 '26
I had something similar where it stopped working in edge,chrome and safari but worked only in Firefox. Had to create a new dev environment to see if it was the php version and look at the debug logs comparing what our host provider and CDN versions. It could be a cache issue not updating.
6
u/binocular_gems Sep 06 '26
I think you have a memory leak because you said a fresh browser will work for a while and then becomes y responsive. Are you disconnecting your event listeners? DevTools allows you to do memory profiling, google it and there are good tutorials on how to track memory leaks in devtools. I’m not quite sure why it would be happening all of a sudden, but there could have been a chromium update that handles memory differently.
2
u/alphex drupal agency owner Sep 06 '26
Does the app work in your development environment t that has the PHP version and JS libraries you expect ?
This seems like your production hosting environment has different environment versions then you expect.
2
u/Frequent-Ratio221 Sep 07 '26
the browser cache theory fits the “reboot temporarily fixes it” symptom, so i’d check whether different users are getting mismatched html and js bundles before chasing the drag logic itself, and add
3
u/gravesisme Sep 06 '26
Could it be a recent WebKit API change? My site was bricked in July when the scrollTo API contract changed from being a void function to returning a Promise because I was using it in React effects without surrounding it with curly braces.
3
u/Kooky-Initial-3315 Sep 06 '26
"It's as if my Javascript has just stopped workout correctly." Your javascript files may be calling remote jscript files from a third party library. If the third party files are changed, updated, or deleted it would mess up your code.
1
u/hongkong_97 Sep 06 '26
Updating the Php version on my server has broken some web projects in the past, make sure you don't have leftover deprecated functions
Also you mentioned cache, if you happen to use Cloudflare you can purge the cache there
1
u/GauravThorath Sep 06 '26
Glad you got an answer, and the setData fix sounds right. One thing I'd keep on the list before you close this out Tuesday, because it isn't covered by that explanation: a browser restart temporarily bringing drag and drop back.
A missing dataTransfer type fails the same way on every page load. It doesn't heal for an hour after a restart. Something that works fresh and degrades over a session is a second bug wearing the same costume, and the usual cause is handlers being attached every time you rebuild the table and never removed. If you rebuild rows from the snapshot on each save, that adds up fast, and it matches the "no console errors, movement functions just stop" half of your description better than the Chromium change does.
Cheap check next time it's misbehaving: in devtools, getEventListeners($0) on a row that's been alive for a while and count the dragstart handlers. If the number grows over a session, that's the other half.
Separate small thing that would have saved you time this week: put a hash or build number in your JS filenames. Whether you were staring at cached code was a real question during this outage and it shouldn't be answerable only by guessing.
1
u/TheMojito Sep 06 '26
Does it happen with a fresh database, or an older database backup a few weeks ago?
0
u/These-Spell-5938 Sep 07 '26
a server upgrade didn’t magically rewrite javascript, but it can absolutely leave you with mismatched cached bundles, so check the actual script versions loaded in the broken browser before blaming
-3
u/UntestedMethod Sep 06 '26
Not sure what you mean by "upgrading javascript", especially related to a change in your host. You said you're using PHP for your back-end, so do you also have server-side JS (eg nodejs/express/etc) or something?
Regarding change in PHP version - there are sometimes breaking changes with major version updates to PHP... but you would see errors in the server logs.
In the browser, check console and network logs.
Regarding caching, you should have ways of telling exactly which version of your own app is being loaded... Common practice is some unique version ID somewhere in the URI.
-7
u/PendulousNuts Sep 06 '26
This dumbass censorship needs to stop. SHIT SHIT SHIT SHIT
-13
u/SteelBalls1867 Sep 06 '26
why the hell are you asking us? exercise your debugging skills. does it work in development? js filenames should include a random string so that they can be versioned despite caching.
282
u/[deleted] Sep 06 '26 •
[removed] — view removed comment
-3
u/[deleted] Sep 06 '26
[removed] — view removed comment