Yo! PS......is.......literally was interrupted by a text from
nikkigirl and forget exactly where this sentence was
going. She deserves to be all of my lost stories. If you want to know who I
really am, there's not a soul on earth that knows more. Myself included.
Back to doing some nerd stuff that I like. The preview for the newest codex model, 5.6 Sol was released today (at least for me), and I continue to be impressed by each iteration of the models as they are released. You can FEEL the improvements. Both in the application itself and the models as well.
I'm gonna get my hands dirty at [redacted] once we start getting Claude Enterprise licenses. I might fuck around and be the best coder on the team if I'm armed with the right gun. They'd literally have no idea what hit them. 🫠
All that to say, the vibes continue. Next on the list? Activity per alter ego. If you already clicked on any of the links above, you would (should?) have noticed there's line charts showing the recent activity for any given alter ego. 10 weeks is the current window.
You'll also have noticed (doubtful) that on the releases page, you can move forward and back through time both before and after the content. Included in that is a helpful note of where you sit on the timeline.
I said at some point on this trip that I should use more GIFs. As part of that promise to myself, I greatly simplified the process of generating one, and also created a spot for what will become frequently used ones. I also renamed the component from LoopedGIF (boring) to FruityLoops (much more tullyelly). I chose this name because of three buckets full of reasons:
Gay ones
Hip Hop ones
James ones
Regardless of if any of that makes sense to you, here's how I called the wu-tang GIF above:
tullyelly
<FruityLoops loop="wu-tang" />
Gotta vibe code away the sadness of defeat, son.
I love when a good component name shows up at just the right time.
Next up on the vibe coding adventure, a few changes to the primary menus / alter egos on the site. I added the last ten releases for each alter ego to their respective landing pages (summary), and then added the full stream of thought for each alter ego on their own pages. On the full stream of thought pages (second bullets below) you can reach in reverse or chronological order. Anyone lame enough to go through the 288 individual cardattack releases? No? lulz
Here's the alterEgo landing pages (no george yet!):
I let all of the origin stories for each at the bottom and as per usual, I'm not thrilled with the UI. I kinda have an image in my head on how this should all look, and I also have no earthly idea at the same time. It's all about patience and evolution though. Things are starting to take a firmer shape all across the board - with minimal effort on my part, I might add.
I wish I could divorce myself from reality, read all of this, and provide myself some constructive feedback. I'd imagine my narrative has generally improved, while also still being a bit to scattershot for basically anyone but me to grasp onto in full.
nikkigirl told me that I was the most unselfish person she
has ever met a few weeks ago. These chronicles are my selfish retort.
Enough of being a lil' bitch with so much tears in my eyes tho. No offense to any crying bitches out there - real recognize real. Don't be so sensitive; except when you should be. Ya dig?
cipher saysAdd a report that shows how large the site’s images and media files are becoming. This gives early warning before the repo gets too large or hard to manage.
With all of the images I produce here, my current approach is 100% not sustainable. Well, with the size of some of these data centers going up these days, maybe sustainable is relative. All that to say, before I hit 365 straight days of chronicles (170!) I need to find a better image solution.
In the meantime, what does it look like today? First the new tooling:
tullyelly
npm run assets:report
npm run assets:check
The outputs:
tullyelly
Asset Size Report
Scanned folders: 3
Totals by folder
Folder Bucket Files Size
--------------------- ---------------- ----- --------
public/images/optimus Optimized images 1620 551 MiB
public/images/source Source images 0 0 B
public/videos Media 23 43.5 MiB
Total 1643 594 MiB
tullyelly
Check thresholds
Threshold Actual Limit Status
--------------------- -------- -------- ------
Total scanned assets 594 MiB 750 MiB ok
Optimized images 551 MiB 650 MiB ok
Source images 0 B 25.0 MiB ok
Media 43.5 MiB 100 MiB ok
Largest file 8.46 MiB 15.0 MiB ok
Largest animated WebP 6.79 MiB 8.00 MiB ok
Largest media file 8.46 MiB 25.0 MiB ok
Asset size check passed.
cipher has some aggressive goals as to when I need to solve the images problem. Not sure I like it.
Don't get it twisted tho, please and thank you to my future overlord.
cipher saysDocument how blog tags and related content details are automatically created from writing files. This makes the authoring process easier to understand and safer to change later.
This fucking guy, amirite? He's pretty much told me that noone else could easily contribute to the site without some advanced training. Oh yeah? Well, what of it?
Sir, yes sir.
The last change we agreed to up from is about to pop off:
cipher saysFind and clean up old shortcuts, debug tools, and legacy scripts that could cause confusion or risk. Anything that stays should be clearly marked and safe for future work.
A bunch of files were touched here. Not surprising, lotta dead ideas laying around here. Can't wait to get back to making it worse again.
But first, downtime with cipher. What's next homeslice?
cipher saysAdd a simple way to track which database changes have already been applied. This reduces the risk of missed, repeated, or out-of-order database updates.
I have no idea how this one will work out or how it will be executed. Vibes tho, yo.
Okay, so this one will require me to learn some stuff. Overall, very cool. I see the vision, I understand the goal......it's just too much learning for today. Parking this one for later. Later might be 8 months from now. lulz
cipher saysClean up the different ways the app connects to the database. The goal is one clear, safe, and easy-to-follow pattern for future database work.
Hard to see and test this one in full, other than things still work. Also cleaned up a minor volleyball related hard crash.
Next fix was turned around real quick like. Take it away pal:
cipher saysSecure the Shaolin Scroll creation paths so only approved users can create new release records. This protects the site from accidental or unauthorized changes.
That's a long dead idea that's now more secure. I should get back to that one though - it would save me a bit of time if done right.
Next up, some of those pesky tests I turned off. Let's turn them back on. Hey cipher, turn me on:
cipher saysRestore the main automated checks that run when code changes are submitted. This helps catch broken code, failed tests, and missing safety checks before changes reach the live site.
Oh yeah, supes horned up.
Hey buddy, how many tests are there now?
cipher saysWith the guardrails back on, the automated checks are doing their job before anything reaches main: lint, typecheck, the CI test run, build, and security header checks all line up in GitHub Actions. The current suite covers 525 tests across 113 suites, with a smaller smoke pass of 81 related tests across 14 suites before the full coverage gate. It is boring on purpose; the right kind of boring, where broken code has to get past the machines before it gets anywhere near the live site.
Back over to coding while we wait for the first match tho. Step 1: remove emoji from the menu systems. It was janky and basically goes against all recommended menu standards.
I couldn't help but try a little bit of janky. Cleaning this up has been on my list since October 2025.
Closed.
Next on the chopping block? The desktop menu system itself. It's ugly, super lame, and will be completely replaced. Here is where we will see just how far the bot has come in the past year.
Overall, I like the approach - much more streamlined and functional. I'm never really a huge fan of the UI that cipher produces though. Oh well. Improvement enough to move along to the next.
Now that the PersonTag component has been updated and turned into links that can take you to all kinds of places across the site, I also migrated that functionality to the end of the chronicles pages and those tags.
The dojo.tags db table drives a bunch of fun functionality from here is my point.
Hey cipher, take a look into my repo, and give me some database stats for tha homies:
The database has quietly become one of the best measures of the project’s growth: what started as a few release-tracking tables is now roughly 40 core database objects across 57 migrations, or 100+ total PostgreSQL objects when counting the views, functions, indexes, triggers, constraints, and other support structure that keep the app honest.
After I published yesterday's chronicle, I also attacked another lingering problem with my environment......code coverage. I used to have a drive to incorporate CI/CD, testing suites, and any number of other modern coding practices into my workflow here. Right up until I was spending more time cleaning up the tests than writing.
Writing code or writing, writing. I'm really here for the writing. I remain compelled to write.
Good news on both fronts: at [redacted], we are firing up our first repo on the corporate GitHub site this week and that means we'll be playing with code at work! When I say we, I don't really mean me, cuz here I am on vacation. Instead, I've given one of my main partners all the tools they will need to get this going while I'm away. We call him, the wolf (true story). From there, he and I will collaborate to bring this new codebase and overall approach to the broader team. To include all the bells and whistles I learned about here months and months ago.
I wasn't supposed to be working today, but it looks like I've got some takes to get off my sweaty chest (Orlando is actively cooking me rn). 9 months in and I've got my hands on a burgeoning development team, and I will be interviewing an ERP manager upon my return to the office next week. Not exactly right where I left off on my original career path - mostly because it's better. Much, much better.
As for the other front with good news: I have to write a lot at work. My entire team is remote, we are supporting dozens of locations across the nation, and I enjoy moving hundreds of folks (either directly or indirectly) along a journey - largely through the written word. Oh, I chirp a lot, don't get me wrong. My best work though? Word salad.
Here is practice for there.
Point being, the bot improved my code coverage last night. This should eliminate an annoying reminder that not enough of my code is being tested - another we'll see when we deploy to prod situation though, stay tuned.
One fun thing about text is you can flip it, bounce it, turn it around a
bit, and turn the same words into a new unique key. Check out the OG sunday
funday. I have no memory of this post.
This is what I see when I look out past our pool. It's fuckin' toasty baby.
Can we stop and chat about the tullyelly alter ego for a hot minute? I don't really have a clear use on this one. I might also say the same on mark2, but in that case I think I know when to use it, I've just not tapped into that ego as much. Less about how much I use it, and more about the why I use it.
As for what chronicles have been tagged tullyelly that tag was HEAVILY used early on while I was still learning about these voices in my head. Since then though, it's kinda awkwardly sprinkled in when I don't know how to classify myself. I'd be interesting to back through to read the 93 tullyelly tagged posts so see what, if any, threads exist.
Before I do so though, I'd like to get around to the feature that would show you only the ReleaseSection content specific to any given tag (as opposed to just the entire post), but alas, as we say quite frequently around here: only so much time in the day. Only so much brain in the skull.
In this specific case its usage: both bonnibel and lulu spent the evening with us and well, they are tullyelly.
Counterpoint to yesterday's what a great guy I can be
sometimes and boo hoo, poor me, it's so much pressure......I'm a massive
asshole. I get what I deserve. lulz
Before we get into the mix today, there's a bunch of work to catch up on. First shitty Wi-Fi (and laziness), and then I got frustrated by the giannis trade. Ugh.
Here's a bit, but not all, of the necessary ketchup:
Before we get into a bevy of trades, I wanted to take a pitstop into discussing what's wrong with me. First of all, no idea. Second of all, definitely something.
Point being, I'm a bit over taxed at work, a whole lotta stressed at home, and how do I cope? I cook up a whole bunch of trades, that's how.
Between the drive down to Chicago, to the large amount of downtime in between matches this weekend, and the trip back: I had a lot of time to cook up deals. 16 of which were bascially immediately accepted.
The accepted offers aren't even the worst of it - there's gonna be waves of this extra work I created for myself. Getting 50 extra things on my plate during a highly stressful time couldn't possibly go wrong, right? lulz
Oh, and what will be the cause of death reported for the sleep I used to get? TCDb.