# Changelog: what shipped in DoDomain

> A dated, plain-language record of what shipped in DoDomain: connect flow and API changes, SDK releases, Domain Connect proofs, monitoring and pricing.

- Canonical HTML page: https://dodomain.io/changelog
- This Markdown twin: https://dodomain.io/changelog.md
- Site index for agents: https://dodomain.io/llms.txt
- Full documentation as Markdown: https://dodomain.io/docs/llms-full.txt

Generated at build time from the same React source the HTML page renders, never a hand-maintained second copy. Every public page on this host has a twin at `<url>.md`.

---

Changelog

## What shipped

New capabilities in the connect flow and the API, SDK releases, Domain Connect provider proofs, monitoring and pricing changes, dated, in plain language, newest first. Internal refactors are left out on purpose.

1. September 5, 2026
   
   ### Framework guides, per-provider DNS pages, Domain Connect field notes
   
   - Three new integration guides: [Rails](https://dodomain.io/docs/guides/custom-domains-multi-tenant-rails), [Laravel](https://dodomain.io/docs/guides/custom-domains-multi-tenant-laravel) and [Django](https://dodomain.io/docs/guides/custom-domains-multi-tenant-django), each with the framework's own host-header trap, a webhook verifier in that language that is tested against DoDomain's signing, where TLS terminates on that stack, and the apex answer.
   - [DNS provider setup guides](https://dodomain.io/docs/guides/dns-providers): one page per provider (GoDaddy, Namecheap, Cloudflare, Squarespace, Wix, Hover, Porkbun, Route 53 and more), generated from the same source the hosted connect flow shows customers, so the two can never disagree. GoDaddy, Namecheap, Squarespace, Wix, Porkbun and Cloudflare vocabulary re-checked against each provider's help pages; Hover added to provider detection and the guides; former Google Domains customers pointed at the Squarespace panel.
   - [Domain Connect field notes](https://dodomain.io/docs/guides/domain-connect-field-notes): the dated account of shipping signed one-click applies end to end on a real provider, and every bug hit on the way, linked from the State of Domain Connect page.
2. September 2, 2026
   
   ### Sign-up funnel, seven comparison pages, this changelog
   
   - Every "Start free" button on dodomain.io now opens the app on **Create your account** instead of the sign-in form.
   - Free DNS drift monitoring is now stated as what it is (on every plan, never a metered add-on) on the home page and in the docs.
   - `@dodomain/node`, `@dodomain/connect` and `@dodomain/react` describe themselves on npm as custom domains for SaaS with Domain Connect support (README and keywords; no code change).
   - This public changelog.
3. August 27, 2026
   
   ### What DNS actually says, and a real pricing page
   
   - The connect flow now shows an **expected-vs-found diff** for every record: the value your customer's authoritative DNS currently returns next to the value the session asked for; and its propagation copy stops promising things DNS cannot promise.
   - White-label attribution: integrators can hide the "powered by" line in the hosted flow.
   - A dedicated [pricing page](https://dodomain.io/pricing) with the quota rules spelled out, and the sitemap derived from the real docs directory so new docs pages can never fall out of it.
   - Nightly Lighthouse budgets over the live public pages, so a page-weight regression is caught even when no pull request touched the page.
4. August 20, 2026
   
   ### Teams, and a drift monitor that confirms before it alerts
   
   - **Multi-team accounts**: a user can belong to several teams, switch between them, and every OAuth / MCP grant is pinned to the team it was consented for.
   - Drift monitoring now paces itself by a connection's age: every 10 minutes for its first day, hourly for a week, then every 6 hours; and a suspected break must be confirmed on three consecutive checks before `connection.failed` fires. Recovery is still noticed on the first healthy check.
   - Secret-key rotation can keep the previous key valid for an overlap window (0, 1 or 24 hours) so a rollout never has a dead minute.
   - A **test send** for a new webhook endpoint, plus a never-delivered hint, so an endpoint is proven before it matters.
5. August 19, 2026
   
   ### @dodomain/react, a full-surface Node SDK, dashboard rework
   
   - **`@dodomain/react`** published: a `useDoDomainConnect` hook and a drop-in button around the connect widget.
   - **`@dodomain/node` 0.3.0** covers the whole v1 API: sessions, connections, apps, domains, webhook endpoints, key rotation, and the webhook verifier. All three npm packages now release from the public mirror over OIDC trusted publishing.
   - The dashboard was rebuilt page by page: a sidebar shell with an app switcher, connections and sessions pages with a connect funnel by tier and provider, webhook endpoint health with a deliveries master-detail view, an overview with a system strip and needs-attention list, URL-backed filters, an onboarding checklist, a command palette (⌘K), a domain preflight inspector, and app detail tabs with an allowed-origins editor.
   - Themed 404 pages with working dark mode on both the marketing site and the app.
6. August 17, 2026
   
   ### Hard caps, background verification, teams with roles
   
   - Every plan's monthly connection allowance is now a **hard cap**: creating a session past it returns `402 quota_exceeded`, nothing already connected is affected, and there is no overage billing. Subscription state is reconciled against RevenueCat hourly so a dropped webhook cannot leave a team on the wrong plan.
   - Open sessions are **verified in the background**: if your customer adds the record and closes the window without clicking Verify, the session still completes and you still get `connection.verified` and `session.completed`.
   - Multi-user teams with invitations and an enforced role hierarchy (owner / admin / member).
   - REST lifecycle for webhook endpoints and self-service secret-key rotation, all in `/api/v1`.
   - The published **OpenAPI 3.1** description is generated from the same schemas the API validates with, at [dodomain.io/docs/openapi](https://dodomain.io/docs/openapi).
   - `GET /api/v1/connections/:connectionId` and a `connections` namespace in the Node SDK.
   - Apex-domain guidance in the docs: which record types work at the zone root, and which providers offer ALIAS / ANAME / CNAME flattening.
   - The hosted flow stops promising one-click where no connector exists for the user's provider.
7. August 12, 2026
   
   ### Both Domain Connect templates proven on a live provider
   
   - The `custom-subdomain-cname` template completed a real signed apply end to end on Glauca HexDNS: the provider wrote the CNAME, DoDomain verified it at the authoritative nameservers, the session verified and `session.completed` was delivered. With the `domain-verification` (TXT) template proven on 2026-08-06, both shipped templates have now round-tripped on a real third-party provider.
   - The Domain Connect signature-and-key emission order is chosen per DNS provider, matching what each provider's implementation actually accepts.
8. August 6, 2026
   
   ### Docs at dodomain.io/docs, account deletion, Sign in with Apple, a cleaner webhook body
   
   - The developer documentation moved to [dodomain.io/docs](https://dodomain.io/docs), with search, and every old `/guides` URL redirects.
   - In-app **account deletion** and **Sign in with Apple**.
   - The webhook body is now `{ id, type, occurredAt, data }`; the old `event` key is still sent as a deprecated alias so existing receivers keep working.
   - The first end-to-end Domain Connect proof on a live provider: the `domain-verification` template on Glauca HexDNS, every hop real.
   - Verification interrogates the zone that actually owns the record (the nearest zone cut), so delegated subzones verify correctly.
9. August 4, 2026
   
   ### The embedded sheet
   
   - `@dodomain/connect` opens as a content-sized sheet that adopts the host page's theme; provider authorization opens in a popup and the sheet auto-verifies when the user returns.
   - The home page's "connection lab" mirrors the real hosted flow instead of a mock-up.
10. July 31, 2026
    
    ### SDKs on npm, and a review sweep
    
    - **`@dodomain/node` and `@dodomain/connect` 0.1.0** published to npm: zero runtime dependencies, dual ESM/CJS, MIT.
    - A domain that stops resolving entirely is reported as `domain_not_found` rather than as a missing record; the drift monitor never flips a connection on an inconclusive check.
    - Webhook endpoint URLs must be unique per app and are capped per plan; every outbound request to a URL a customer chose is vetted against private address space.
    - Devino Solutions Inc named as the operator in the terms and privacy policy.
11. July 29, 2026
    
    ### List and disconnect connections, honest failure reasons
    
    - `GET /api/v1/connections` (paged) and `DELETE /api/v1/connections/:connectionId`: disconnecting stops monitoring for good.
    - The two `429`s are told apart (`rate_limited` per app vs per IP), and `connection.failed` says whether it is about one connect attempt or a live connection that regressed.
    - Re-verifying a session that already finalized meters usage and emits `session.completed` exactly once.
    - The tier-1 (Cloudflare OAuth) apply can add a TXT record beside existing SPF or site-verification records at the apex instead of refusing.
    - Domain Chief became the first DNS provider to enable DoDomain's Domain Connect templates (2026-07-28); a nightly watch now opens an issue the moment another provider does.
12. July 24, 2026
    
    ### Templates merged into the public Domain Connect registry
    
    - Both DoDomain templates (`domain-verification` and `custom-subdomain-cname`) were merged upstream, and DoDomain's public signing key is published as a chunked TXT record at `_dck1.dckeys.dodomain.io` per the registry's guidance.
13. July 20, 2026
    
    ### First comparison page and an answer-engine-ready surface
    
    - [DoDomain vs Entri](https://dodomain.io/compare/entri), with every Entri figure sourced and dated, and FAQ structured data on the pages people ask about.
14. July 16, 2026
    
    ### Search and analytics groundwork on the marketing site
    
    - Titles, descriptions, canonicals and a social card on every marketing page; PostHog and GA4 on the landing site, disclosed in the privacy policy.
15. July 12, 2026
    
    ### Domain Connect (tier 2) switched on in production
    
    - Signed one-click applies are live for any DNS provider that enables DoDomain's templates; where a provider has not, the flow degrades to guided records with the same authoritative verification.
16. July 11, 2026
    
    ### The connect flow, provider guides, and the platform underneath
    
    - The hosted connect flow was rebuilt with live per-record verification, and 17 provider-specific DNS guides with nameserver detection (Cloudflare, GoDaddy, Namecheap, Squarespace, Route 53, DigitalOcean, DNSimple, Gandi, IONOS, Name.com, NameSilo, Porkbun, Vercel, Wix, WordPress.com and more).
    - Public developer docs, `llms.txt` and a sitemap; a public `POST /api/v1/domains/check` pre-flight and on-demand connection re-verify.
    - Dashboard: webhook delivery log with redrive, key rotation, HTTPS-only endpoint validation, a quickstart, usage banners and health badges.
    - All four webhook events (`connection.verified`, `connection.failed`, `session.completed`, `session.abandoned`) with retries and a dead-letter queue, delivered by a standalone worker; plan-based rate limiting.
    - The Graphite & Pine design system across the app, the marketing site and the widget.
17. July 10, 2026
    
    ### One deployment unit
    
    - Production moved to a single compose-defined stack (web, worker, database, landing) built from the same file that runs locally and in CI.

### Start on the free plan

No card, no sales call: create an app, mint a session, and watch the first domain verify.

[Start with 50 free](https://app.dodomain.io/signin?mode=signup) [Read the quickstart](https://dodomain.io/docs)
