Ominvo beta launches July 23, 2026 — only 10 spots remain Join the waitlist →
All posts
Building OminvoDay 42

Day 42: The plumbing day — alert preferences, AI bot rules, and Google's first crawl

June 12, 20266 min read

Five feature pages have been live for days. The Product dropdown links to them, the navigation works, and the content reads well. But until today, the sitemap didn't list a single one of them. The robots file knew about the generic crawlers but had nothing specific to say to the AI bots that now index a meaningful fraction of the web. And Google had no idea ominvo.com existed — not because the site was hidden, but because nobody had sent an invitation.

Shipping a feature isn't the same as making it discoverable. Today was the plumbing day. Three small ships — a new feature page, a smarter robots file, and the first Google Search Console submission — with one idea underneath all of them: the past 41 days of building only pay off if people can actually find the thing we built.


The last placeholder

The Product dropdown has five items with real destinations: Instant Alerts, AI Replies, Analytics Dashboard, Smart Filters, and — as of today — Alert Preferences. The last one had been sitting there with href="#" for two days while the sitemap and robots work queued up. Today it closed.

The new page — /features/alert-preferences — covers three things the settings UI already supports but that no marketing page had explained. The first is the master toggle: one switch that controls whether you receive any email alerts at all. Off by default until you opt in, which is the right default for a new account. The second is the star filter: all new reviews, or only the 1–3 star ones. The third is delivery cadence — instant (the default), daily digest at a time of your choosing, or weekly digest on a day of your choosing.

The positioning took a few passes to get right. The Instant Alerts page sells speed — the email lands within seconds of Google notifying us. Alert Preferences sells control over noise. Most review tools blast every notification at you whether you want it or not. We let owners decide which reviews are worth interrupting their day and which ones can wait for Saturday morning's digest. Those are different selling points, and they needed a different page.

The build itself was fast because we'd learned from the earlier feature pages. Investigation first — confirm section order and exact line references — then a single surgical prompt with a hard list of files to touch. Pattern-matching the existing four pages meant the Tailwind classes, color values, and section structure were already solved. The only real work was writing copy that made the feature feel useful rather than just listing its knobs. Day 41's lesson about reading the codebase before anything else applied cleanly here: two minutes of investigation saved a round of rework.

Telling robots and search engines we exist

The sitemap was lying. Not maliciously — it just hadn't been updated since before most of the feature pages existed. It listed the homepage, pricing, the ROI calculator, the policy pages, seven industry landing pages, and the blog system. It did not list any of the five feature pages or /why-us. Six of the site's most important pages — the ones that explain what the product does and who it's for — invisible to crawlers.

Added all six today with the right change frequency and relative priority. The sitemap now covers roughly 60 URLs across static marketing pages, industry pages, feature pages, blog posts, and help center articles.

robots.txt got opinionated about AI. The original file handled one case: a wildcard rule that said "everyone can crawl the public site, and here are the auth-gated paths you can't see." That's fine for Googlebot and Bingbot. It's not enough for the AI crawlers that now make up a growing share of web traffic.

Under the robots.txt spec, a bot matching a specific user-agent rule follows only that rule — not the wildcard. So if you want a specific AI crawler to have the same access as any other bot, you can't rely on the * rule to cover it. You have to write an explicit rule for it. And if you write Allow: / without also mirroring your existing restrictions, you've accidentally opened your auth-gated pages to it. Easy mistake to make, and worth doing right. We added explicit rules for nine AI crawlers — each one mirrors the same allow/disallow pattern as the wildcard rule, nothing more and nothing less.

Google's first look. Verified domain ownership in Google Search Console and submitted the sitemap. Google reported success — 60 pages discovered. Indexing itself takes days to weeks for a site under 50 days old, and there's no guarantee a first crawl translates into rankings. But Google now knows the site exists, knows where to look, and has a prioritized list of what matters most. The conversation has started.

Dependency hygiene

Ran npm audit before closing out the day. Four advisories across the dependency tree — two transitive, two tied to a framework dependency that would need its own upgrade session.

The two transitive ones closed today. Small, isolated, easy to verify. The other two are a different category of risk. Fixing them means bumping a framework version, and framework bumps live and die by end-to-end verification — not just a clean type check, but actually running the app and confirming the paths that matter still work. Don't assume code paths work because they compiled. Day 43's main task is the framework upgrade, scoped as its own dedicated session with full verification before anything ships.


42 days in, the build is mostly behind us. The signup flow works, the dashboard loads, Stripe processes payments, and email alerts are wired end to end — from Instant Alerts through the preferences that let you control how loudly they interrupt you. What remains before the July 23 launch is mostly the work of making the build matter: earning Google's attention, tightening the path from cold visitor to paid signup, and making sure nothing rusts between now and then.

The plumbing day doesn't make a good story. No late-night debugging, no production incident, no clever fix. Robots files and sitemap entries aren't the kind of work that goes on a highlight reel. But they're the work that makes the highlight reel visible. Good day.

Written by

The founder of Ominvo

Building review management for single-location small businesses. Join the waitlist →