Infrastructure
· 17 checks — DNS, redirects, IPv6, crawlability, URL variants, and domain intelligence rolled into one auditable list.FHTTP Probe TimingActionTotal 3076 ms — DNS, TCP, TLS, TTFB, content transfer breakdownFIX
Connection waterfall
BDNSSECUnsigned (DNSSEC not deployed)REVIEW
BCAA RecordsNo CAA records (any CA may issue certificates)REVIEW
CReverse DNSAction0/2 IPs match cert SANREVIEW
CIPv6 ReadinessActionNo IPv6 supportREVIEW
IPv6 support is increasingly important for global accessibility. About 40% of internet users have IPv6 connectivity.
No AAAA records — same impact as 'no IPv6 (AAAA) records'; IPv6-preferring clients pay extra latency falling back to IPv4.
Source: Google IPv6 stats
BTLS Certificate Expiry & Recommendations32 days until leaf cert expires — 2 issues to addressREVIEW
Certificate validity
Recommended actions
- Enable DNSSEC on your domain for DNS spoofing protection
- Enable OCSP stapling on your TLS server to remove a CA roundtrip and protect user privacy
BOperational Status PageNo status page link detectedREVIEW
ADNS Records2 A records, 31 ms lookupPASS
| A | 216.198.79.67, 64.29.17.67 |
| AAAA | — |
| CNAME | — |
| NS | — |
| MX | — |
| TXT | — |
| CAA | Lookup not available with standard resolver |
SPF helps prevent email spoofing. Add a TXT record starting with 'v=spf1'.
Without SPF, receiving servers can't validate sending IPs — your domain is easier to spoof in phishing.
Learn more ▾ ▴
SPF complements DMARC. Both should be published. SPF records list authorized sending IPs (e.g., `v=spf1 include:_spf.google.com ~all` for Google Workspace). After publishing, verify in Google Postmaster Tools or mxtoolbox.
Source: RFC 7208 (SPF)
A+Subdomain TakeoverNo subdomain takeover risk detectedPASS
A+Multi-Resolver DNS SpeedMean 24ms across 3 resolvers (spread 38ms)PASS
A+Redirect ChainNo redirects — direct accessPASS
https://squid-next-five.vercel.app
229 ms · HTTP/1.1 FINAL
| # | URL | Status | Time | Protocol | Server |
|---|---|---|---|---|---|
| 1 | https://squid-next-five.vercel.app | 200 | 229 ms | HTTP/1.1 | Vercel |
ACrawlabilityrobots.txt present, sitemap with 0 URLsPASS
An empty sitemap provides no value. Add <url> entries for your pages.
An empty sitemap signals 'no content to index' to Google — actively harmful versus having no sitemap at all.
Learn more ▾ ▴
Google compares URLs in the sitemap against URLs it has crawled. An empty sitemap on a site with thousands of pages signals abandonment. Either populate it correctly (most CMSes auto-generate) or delete the file and let Google crawl normally.
Source: Google Search Central / sitemaps.org
Add a 'Sitemap:' directive to robots.txt so search engines can discover your sitemap.
robots.txt omits Sitemap: directive — crawlers must fetch /sitemap.xml by convention; reliable but missing the explicit hint.
Source: sitemaps.org
<!DOCTYPE html><html lang="en" data-theme="auto" class="sourceserif_8a4f041b-module__MP8VTa__variable publicsans_74153ae6-module__T-NGfa__variable plexmono_2781363e-module__rHcGRq__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/immutable/chunks/2qc4qc-mgfh0l.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/43kzzwbdxockn.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/30ngernnc6hzs.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/01shbrt4t3xg_.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/1uedkoy427erj.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/3uoswio38icas.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/3o8wyqymn1c45.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/1xcsccs9o0b7r.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/immutable/chunks/1mlftcslf095m.js"/><script src="/_next/static/immutable/chunks/2v3cv0w2fww2x.js" async=""></script><script src="/_next/static/immutable/chunks/1rd39qo4-7_k5.js" async=""></script><script src="/_next/static/immutable/chunks/2suy93rarf9c1.js" async=""></script><script src="/_next/static/immutable/chunks/31tcpybs-b989.js" async=""></script><script src="/_next/static/immutable/chunks/turbopack-2v65mu12f6tdx.js" async=""></script><script src="/_next/static/immutable/chunks/2r4ice16ep-y9.js" async=""></script><script src="/_next/static/immutable/chunks/3m19lim_yjr_d.js" async=""></script><script src="/_next/static/immutable/chunks/2_-78bk1p42i3.js" async=""></script><script src="/_next/static/immutable/chunks/31ou1vy03ghij.js" async=""></script><script src="/_next/static/immutable/chunks/2euqay-rw2qub.js" async=""></script><title>Sign in · Squid</title><meta name="description" content="Initiative → Epic → Feature → Story → Task → Subtask, refined against the delivery model."/><link rel="icon" href="/icon.svg?icon.31oxcdvi2glu8.svg" sizes="any" type="image/svg+xml"/><meta name="next-size-adjust" content=""/><script>try{var t=localStorage.getItem('squid:theme');
if(t)document.documentElement.setAttribute('data-theme',JSON.parse(t));}catch(e){}</script><script src="/_next/static/immutable/chunks/0c0hxoamwjsbw.js" noModule=""></script></head><body data-access="none"><div hidden=""><!--$--><!--/$--></div><!--$--><div class="auth-wrap"><div class="auth-card"><div class="auth-brand"><span class="auth-name"><span class="squid-wordmark " style="font-size:31px" role="img" aria-label="Squid"><span aria-hidden="true">s</span><svg class="squid-wordmark-q" viewBox="0 0 42 54" aria-hidden="true" focusable="false"><path class="squid-wordmark-fin" d="M7 15 3 6l11 4M29 10 39 5l-3 12"></path><path class="squid-wordmark-body" fill-rule="evenodd" d="M21 7c10.5 0 18 7.2 18 17.4 0 6.6-2.9 11.7-7.5 14.5v8.6c0 2.5 1.5 4 4.1 4.4-5.7 2.6-11.3-.8-11.3-6.7v-4.5c-1.1.2-2.2.3-3.3.3C10.4 41 3 33.8 3 24.4 3 14.2 10.5 7 21 7Zm0 10.3c-4.5 0-7.5 2.9-7.5 7.1 0 4.3 3 7.2 7.5 7.2s7.5-2.9 7.5-7.2c0-4.2-3-7.1-7.5-7.1Z"></path><path class="squid-wordmark-tentacle" d="M20 40.8v4.8c0 2.3-1.5 3.8-4.5 4.1 3.4 2.4 9.1 1 9.1-4.2v-5.9"></path></svg><span aria-hidden="true">uid</span></span><small>The brain for your projects</small></span></div><h1 class="auth-h">Sign in</h1><form class="auth-form" action="" encType="multipart/form-data" method="POST"><input type="hidden" name="$ACTION_REF_1"/><input type="hidden" name="$ACTION_1:0" value="{"id":"600a151cd2a3642ed5c07abd3c37adf76e77f1b00a","bound":"$@1"}"/><input type="hidden" name="$ACTION_1:1" value="["$undefined"]"/><input type="hidden" name="$ACTION_KEY" value="k3ca89a38cdfc0dd810ae0b92dece4629"/><label class="field-l"><span>Email or username</span><input autoComplete="username" autofocus="" required="" spellCheck="false" autoCapitalize="none" name="login"/></label><label class="field-l"><span>Password</span><input type="password" autoComplete="current-password" required="" name="password"/></label><button class="btn auth-btn">Sign in</button><p class="auth-note">Accounts are created by the admin. If you do not have one, or have lost your password, ask them.</p></form></div></div><!--$--><!--/$--><!--/$--><script src="/_next/static/immutable/chunks/1mlftcslf095m.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:I[39756,[\"/_next/static/immutable/chunks/2r4ice16ep-y9.js\",\"/_next/static/immutable/chunks/3m19lim_yjr_d.js\"],\"LoadingBoundaryProvider\"]\n2:I[63869,[\"/_next/static/immutable/chunks/2r4ice16ep-y9.js\",\"/_next/static/immutable/chunks/3m19lim_yjr_d.js\",\"/_next/static/immutable/chunks/2_-78bk1p42i3.js\",\"/_next/static/immutable/chunks/31ou1vy03ghij.js\"],\"default\"]\n3:\"$Sreact.fragment\"\n5:I[39756,[\"/_next/static/immutable/chunks/2r4ice16ep-y9.js\",\"/_next/static/immutable/chunks/3m19lim_yjr_d.js\"],\"default\"]\n6:I[37457,[\"/_next/static/immutable/chunks/2r4ice16ep-y9.js\",\"/_next/static/immutable/chunks/3m19lim_yjr_d.js\"],\"default\"]\n8:I[97367,[\"/_next/static/immutable/chunks/2r4ice16ep-y9.js\",\"/_next/static/immutable/chunks/3m19lim_yjr_d.js\"],\"OutletBoundary\"]\n9:\"$Sreact.suspense\"\nc:I[97367,[\"/_next/static/immutable/chunks/2r4ice16ep-y9.js\",\"/_next/static/immutable/chunks/3m19lim_yjr_d.js\"],\"ViewportBoundary\"]\ne:I[97367,[\"/_next/static/immutable/chunks/2r4ice16ep-y9.js\",\"/_next/static/immutable/chunks/3m19lim_yjr_d.js\"],\"MetadataBoundary\"]\n10:I[68027,[\"/_next/static/immutable/chunks/2r4ice16ep-y9.js\",\"/_next/static/immutable/chunks/3m19lim_yjr_d.js\"],\"default\",1]\n:HL[\"/_next/static/immutable/chunks/2qc4qc-mgfh0l.css\",\"style\"]\n:HL[\"/_next/static/immutable/chunks/43kzzwbdxockn.css\",\"style\"]\n:HL[\"/_next/static/immutable/chunks/30ngernnc6hzs.css\",\"style\"]\n:HL[\"/_next/static/immutable/chunks/01shbrt4t3xg_.css\",\"style\"]\n:HL[\"/_next/static/immutable/chunks/1uedkoy427erj.css\",\"style\"]\n:HL[\"/_next/static/immutable/chunks/3uoswio38icas.css\",\"style\"]\n:HL[\"/_next/static/immutable/chunks/3o8wyqymn1c45.css\",\"style\"]\n:HL[\"/_next/static/immutable/chunks/1xcsccs9o0b7r.css\",\"style\"]\n:HL[\"/_next/static/immutable/media/geist_mono_variable-s.p.0b02cdm7g7y6h.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/geist_variable-s.p.2-i4fw5gbtlb7.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/ibm_plex_mono_latin_400_normal-s.p.19gbeb610ur4n.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/ibm_plex_mono_latin_500_normal-s.p.25_05y-blbp24.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/montserrat_latin_800_normal-s.p.28uwn405sb1ju.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/montserrat_latin_900_normal-s.p.1gomk-vpaj81t.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/public_sans_latin_wght_normal-s.p.297-5ju1rzndw.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/source_serif_4_latin_wght_normal-s.p.37qdci525ah5k.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\nb:X\n0:{\"P\":null,\"c\":[\"\",\"login\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"login\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4096]},\"$undefined\",\"$undefined\",4096]},\"$undefined\",\"$undefined\",4116],[[\"$\",\"$L1\",null,{\"loading\":[[\"$\",\"$L2\",\"l\",{\"tab\":\"list\",\"crumb\":\"Initiative → Epic → Feature\"}],[],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/2_-78bk1p42i3.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/immutable/chunks/31ou1vy03ghij.js\",\"async\":true,\"nonce\":\"$undefined\"}]]],\"children\":[\"$\",\"$3\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/2qc4qc-mgfh0l.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/43kzzwbdxockn.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/30ngernnc6hzs.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/01shbrt4t3xg_.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"4\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/1uedkoy427erj.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"5\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/3uoswio38icas.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"6\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/3o8wyqymn1c45.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"7\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/1xcsccs9o0b7r.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/2r4ice16ep-y9.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/immutable/chunks/3m19lim_yjr_d.js\",\"async\":true,\"nonce\":\"$undefined\"}]],\"$L4\"]}]}],{\"children\":[[\"$\",\"$3\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\
A+URL Variantswww/non-www, trailing slash, HTTP→HTTPSPASS
www / non-www
HTTP → HTTPS
Consistent
ACDN & DeliveryVercel (MISS)PASS
A+CDN Cache ObservabilityCache state: MISSPASS
A+Health Check EndpointHealth endpoint at https://squid-next-five.vercel.app/status (HTTP 200)PASS
Domain IntelligenceDomain intelligence data not availableINFO
RDAP and WHOIS lookup both failed