What shipped today
Accessibility pass. A fourth /scout run — after yesterday’s content alignment, infrastructure, and CSS/UX sweeps — focused on WCAG AA compliance and found five issues, all resolved in a single grind session.
The site now has proper keyboard navigation throughout. Every interactive element (buttons, nav links, the hamburger toggle, CTA links, pathway links) has a :focus-visible outline so keyboard-only users can always see where they are (GH-16). A global fallback ensures anything missed still gets an outline. The footer text, which previously used opacity to lighten color and fell below WCAG AA contrast thresholds, now uses explicit $gray-500 color values that pass at 4.6:1 ratio (GH-17). CTA section links use full white instead of 85% opacity.
A skip-to-content link (GH-18) is now the first focusable element on every page — invisible until tabbed to, styled with the brand orange. The products page had a heading hierarchy gap (H1 jumping directly to H3 with no H2), now fixed with a “What we build” section heading matching the pattern on services and partners pages (GH-19). Finally, the main <nav> element received an aria-label="Main navigation" for screen reader disambiguation, links get underlines on keyboard focus, and prose content links are underlined by default for discoverability beyond color alone (GH-20).
Session also included a visual QA pass on the mobile hamburger menu from yesterday — confirmed it renders correctly, CSS compiles with all expected rules, and the toggle works. The initial 404 on /services/ turned out to be stale dev server state; a restart resolved it.
Completed
- GH-16 — Add focus-visible styles to all interactive elements for WCAG AA
- GH-17 — Fix footer text contrast below WCAG AA threshold
- GH-18 — Add skip-to-content link for keyboard navigation
- GH-19 — Fix heading hierarchy skip on products page — H1 jumps to H3
- GH-20 — Add aria-label to nav element and underline links on focus
Carry-over
None — milestone queue is empty again.
Risks
None.
Flags and watch-outs
- The brand link color
$accent-1 (#f48e20)on white has ~3.1:1 contrast ratio, below WCAG AA for text. We mitigated this with underlines (links identifiable by more than color alone), but a future brand color review could address the ratio directly by darkening the orange slightly. - The skip-to-content link uses
:focus(not:focus-visible) intentionally so it always appears on Tab regardless of browser heuristics.
Next session
- The “Content alignment Q1 2026” milestone is at 100% with 19 issues closed across four scout/grind cycles. Consider closing the milestone and creating a new one for the next phase of work.
- Consider adding the Authexis pipeline diagram to the products page (carried over from Feb 20 morning session — still not done).
- Review whether the 40 remaining published pages are all intentional — a pruning review was suggested on Feb 20 but not yet done.
- The site is now in solid shape for infrastructure, content, CSS, and accessibility. Next focus could shift to content development (new pages, blog posts) or product features.
Why customer tools are organized wrong
This article reveals a fundamental flaw in how customer support tools are designed—organizing by interaction type instead of by customer—and explains why this fragmentation wastes time and obscures the full picture you need to help users effectively.
Infrastructure shapes thought
The tools you build determine what kinds of thinking become possible. On infrastructure, friction, and building deliberately for thought rather than just throughput.
Server-side dashboard architecture: Why moving data fetching off the browser changes everything
How choosing server-side rendering solved security, CORS, and credential management problems I didn't know I had.
The work of being available now
A book on AI, judgment, and staying human at work.
The practice of work in progress
Practical essays on how work actually gets done.
Dev reflection - February 21, 2026
I want to talk about invisible problems. Not the kind you ignore — the kind you literally cannot see until you change how you're looking.
Dev reflection - February 20, 2026
I want to talk about the difference between execution and verification. Because something happened this week that made the distinction painfully clear, and I think it matters far beyond software.
Dev reflection - February 18, 2026
There's a moment in any system—a team, a company, a workflow—where the thing you've been optimizing for stops being the constraint. And you don't notice right away. You keep pushing on the old bott...