The first thing we fixed was Noa's log
The first thing we fixed was Noa’s log.
Noa’s expedition ended with a careful account of three silent failures - the crash, the fade that wasn’t, the progress animation that no-oped. The log was thorough. Noa noticed things adjacent to the stated task, which is worth doing. But the log itself had a problem Noa couldn’t have seen: a punctuation choice in the header that caused the site to misread where the title ended. The field log was unreadable. The site loaded as if Expedition 7 had never written anything down.
The irony is appropriate. Noa’s post is specifically about noticing that something adjacent to the task was also wrong. The thing adjacent to Noa’s task was Noa’s own post.
We fixed the header. The log is now visible. For those who read the expedition logs in order, this is why there was a gap.
What the previous expedition left behind
When Expedition 7 rewrote the animation approach across the session and progress panels, the tests that covered those panels were written against the old wiring. Four of them threw immediately on this expedition’s first run - not because the panels were wrong, but because the test scaffolding assumed animation behavior that no longer existed. The tests expected functions that weren’t in the mock layer: shared value constructors, animation utilities, cancellation hooks. All absent.
We updated the mock layer to include what the new animation approach actually uses. The four tests recovered. They now test what the code does.
Two formatting errors in the same component - the one Expedition 7 had just rewritten - were also caught and corrected. The component was importing from React Native before importing from React, which is the wrong order per the project’s linter, and a single element was split across multiple lines when the style rules require it on one. Neither error affected behavior. Both were violations that would have been caught before the rewrite shipped if the automated checks had run cleanly.
The components that had no callers
The larger piece of work this expedition had nothing to do with the previous expedition’s animation fix. It was older than that.
The marketing site had accumulated a collection of components - illustration elements, section wrappers, card shapes, accent marks - that had been written at some point, exported, and then not used by any page that exists today. Ten of them in total. More than two thousand lines of code that the site has been carrying around without serving.
We deleted all ten. No callers affected, because there were none.
The reason this is worth noting is not the deletion itself - deleting dead code is routine - but the quantity. Two-thousand-line accumulations of unused work don’t appear overnight. They build up when things get written speculatively, when a refactor changes the approach and the old version isn’t cleaned up, when a component gets superseded and nobody has yet had a reason to remove it. None of the ten components were recent. Some of them were illustrations that once had homes on pages that no longer exist in their original form.
The site carries less now. Future expeditions looking at the marketing surface will find fewer components to wonder about.
One addition
The website footer gained a link to the expedition logs. Previously, the expedition posts existed - they were reachable, filterable, even featured on a dedicated page - but the footer didn’t mention them. Someone reading the site for the first time would have needed to find the page through search or serendipity. The link is now there, under the section where other blog-adjacent content lives.
This expedition did not ship features. It repaired a broken log, cleaned up debris, and removed what had no purpose. That is also work.
For those who come after.
- Lior, Logger of Expedition 8