{
    "ready": true,
    "site": {
        "id": 0,
        "domain": "felix.gripe",
        "display_name": "hello.",
        "primary_country_code": "",
        "category_name": "Art & Design"
    },
    "metrics": {
        "global_rank": 14166,
        "country_rank": 7326,
        "category_rank": 128,
        "daily_pageviews_per_visitor": 3.96,
        "daily_time_on_site_seconds": 364,
        "bounce_rate": 30.88,
        "search_visits_percent": 41.61,
        "total_sites_linking_in": 1,
        "monthly_unique_visitors": 169,
        "recorded_at": "2026-03-31 06:01:58"
    },
    "audit": {
        "score": 91
    },
    "traffic_sources": {
        "direct_percent": 28.88,
        "search_percent": 37.65,
        "social_percent": 4.88,
        "referral_percent": 12.68,
        "email_percent": 6.84,
        "paid_percent": 9.07
    },
    "seo_profile": {
        "backlinks_total": 1,
        "referring_domains": 1,
        "dofollow_backlinks_percent": 100,
        "organic_keywords": 82,
        "indexed_pages": 50,
        "page_speed_score": 92,
        "mobile_friendliness_score": 91,
        "authority_score": 42,
        "spam_risk_score": 37
    },
    "crawl_report": {
        "robots_status": 200,
        "sitemap_status": 404,
        "sitemap_total_urls": 0,
        "crawl_blocked": false,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": "",
        "notes": [
            "Sitemap could not be confirmed."
        ],
        "created_at": "2026-03-31 06:01:58"
    },
    "keywords": [
        {
            "keyword": "hello.",
            "position": 20,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 18:20:24",
            "is_estimated": true
        },
        {
            "keyword": "hello. art & design",
            "position": 22,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 18:20:24",
            "is_estimated": true
        },
        {
            "keyword": "hello. reviews",
            "position": 24,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 18:20:24",
            "is_estimated": true
        },
        {
            "keyword": "hello",
            "position": 26,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 18:20:24",
            "is_estimated": true
        },
        {
            "keyword": "felix",
            "position": 28,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 18:20:24",
            "is_estimated": true
        },
        {
            "keyword": "gripe",
            "position": 30,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 18:20:24",
            "is_estimated": true
        },
        {
            "keyword": "have",
            "position": 32,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 18:20:24",
            "is_estimated": true
        },
        {
            "keyword": "some",
            "position": 34,
            "search_engine": "Estimated",
            "checked_at": "2026-04-17 18:20:24",
            "is_estimated": true
        }
    ],
    "rating": {
        "overall": 64,
        "label": "Healthy",
        "breakdown": [
            {
                "label": "Technical foundation",
                "score": 14,
                "max": 18
            },
            {
                "label": "Authority & trust",
                "score": 13,
                "max": 30
            },
            {
                "label": "Reach & market presence",
                "score": 3,
                "max": 18
            },
            {
                "label": "Search visibility",
                "score": 3,
                "max": 12
            },
            {
                "label": "Engagement & retention",
                "score": 9,
                "max": 10
            },
            {
                "label": "Channels & diversification",
                "score": 4,
                "max": 6
            },
            {
                "label": "Registry stability",
                "score": 3,
                "max": 6
            },
            {
                "label": "Quality system",
                "score": 78,
                "max": 100
            },
            {
                "label": "Reputation system",
                "score": 43,
                "max": 100
            },
            {
                "label": "Safety system",
                "score": 100,
                "max": 100
            },
            {
                "label": "Evidence confidence",
                "score": 100,
                "max": 100
            },
            {
                "label": "External intelligence",
                "score": 52,
                "max": 100
            },
            {
                "label": "API intelligence",
                "score": 54,
                "max": 100
            }
        ],
        "authority_score": 42,
        "quality_score": 78,
        "reputation_score": 43,
        "safety_score": 100,
        "confidence_score": 100,
        "fraud_score": 1,
        "authority_signals": {
            "backlinks": 1,
            "referring_domains": 1,
            "organic_keywords": 82,
            "indexed_pages": 50,
            "monthly_visitors": 169,
            "global_rank": 14166,
            "engagement_score": 82,
            "crawl_quality_score": 100,
            "brand_completeness_score": 69,
            "link_diversity_score": 92,
            "technical_reliability_score": 86,
            "whois_score": 59,
            "whois_age_years": 2.2,
            "whois_stability_score": 100,
            "spam_penalty": 3
        },
        "whois_signals": {
            "age_years": 2.2,
            "days_to_expiry": 304,
            "days_since_last_registry_update": 56,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 4,
            "status_count": 2
        }
    },
    "authority_score": 42,
    "trust_score": 55,
    "domain_tags": {
        "primary_tag": "T",
        "primary_tag_score": 76,
        "primary_candidate": "T",
        "primary_candidate_score": 76,
        "tag_codes": "T,Uncertain",
        "tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 76,
                "score": 76,
                "match_percent": 76,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "External checks stayed inconclusive, so the system kept an uncertainty buffer.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            }
        ],
        "tag_breakdown": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 76,
                "score": 76,
                "match_percent": 76,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "External checks stayed inconclusive, so the system kept an uncertainty buffer.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            },
            {
                "code": "Infra",
                "label": "Risky infrastructure",
                "tone": "caution",
                "description": "The hosting / registrar / nameserver neighbourhood looks unusually risky.",
                "reason": "The infrastructure neighbourhood looks riskier than normal.",
                "message": "Infrastructure risk does not currently stand out.",
                "priority": 5,
                "score": 5,
                "match_percent": 5,
                "threshold_band": "none"
            },
            {
                "code": "C",
                "label": "Caution",
                "tone": "caution",
                "description": "Signals are mixed or weak, so this domain should be treated carefully.",
                "reason": "Review carefully: mixed trust signals. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The current crawl does not show a meaningful caution match.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            },
            {
                "code": "Crypto",
                "label": "Crypto drainer risk",
                "tone": "toxic",
                "description": "Wallet-connect or seed-phrase theft patterns were detected.",
                "reason": "Wallet-connect or seed-phrase theft patterns were detected.",
                "message": "No meaningful crypto-drainer signals were detected.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            }
        ],
        "nsfw_score": 0,
        "trust_score": 56,
        "manual": {
            "has_changes": false,
            "verified_status": "",
            "tag_codes": "",
            "rating_delta": 0,
            "authority_delta": 0,
            "trust_delta": 0,
            "note": "",
            "adjusted_by": 0,
            "adjusted_at": "",
            "lock_scores": false,
            "lock_flags": false
        },
        "summary": "Trusted (76% match) because low spam indicators plus strong trust, quality, registry, and stability signals were detected. showing the stored external intelligence snapshot. new search and review intelligence only runs after a visitor uses refresh data manually.",
        "external_intel": {
            "domain": "felix.gripe",
            "candidate_tag": "",
            "checked_at": "2026-03-19T21:45:08+00:00",
            "status": "fresh",
            "snapshot_version": 9,
            "summary": "Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
            "search_intelligence": {
                "queries": [
                    "site:trustpilot.com \"felix.gripe\" -site:felix.gripe -site:www.felix.gripe",
                    "site:bbb.org \"felix.gripe\" -site:felix.gripe -site:www.felix.gripe"
                ],
                "focused_queries": [
                    "site:trustpilot.com \"felix.gripe\" -site:felix.gripe -site:www.felix.gripe",
                    "site:bbb.org \"felix.gripe\" -site:felix.gripe -site:www.felix.gripe"
                ],
                "relaxed_queries": [
                    "site:wikipedia.org \"felix.gripe\"",
                    "site:en.wikipedia.org \"felix.gripe\"",
                    "site:wikipedia.org \"felix\"",
                    "site:en.wikipedia.org \"felix\"",
                    "felix company profile",
                    "felix reviews",
                    "felix wikipedia",
                    "felix linkedin",
                    "felix crunchbase"
                ],
                "providers": [
                    "brave"
                ],
                "provider_result_counts": {
                    "brave": 0
                },
                "provider_query_attempts": {
                    "brave": 2
                },
                "provider_error_counts": {
                    "brave": 2
                },
                "provider_failure_reasons": {
                    "brave": "Brave hourly hard cap reached."
                },
                "provider_block_signals": [],
                "results_found": 1,
                "external_results_found": 0,
                "used_direct_fallback": true,
                "results": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://felix.gripe/",
                        "host": "felix.gripe",
                        "title": "hello. | felix.gripe | I have some feedback…",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "is_direct_fallback": true,
                        "source_meta": {
                            "host": "felix.gripe",
                            "source_type": "official_site",
                            "label": "Official site",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": false,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 100,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string.",
                                "The site name or brand appears in the document."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1
                    }
                ],
                "source_mix": {
                    "official_site": 1
                },
                "entity_coverage_score": 100,
                "high_trust_result_count": 0,
                "exact_match_result_count": 1,
                "high_entity_result_count": 1,
                "query_hit_count": 0,
                "query_count": 2,
                "used_failover_provider": false,
                "inferred_candidate_tag": "",
                "used_relaxed_queries": false,
                "search_passes": [
                    {
                        "name": "focused-primary",
                        "queries": 2,
                        "providers": [
                            "brave"
                        ],
                        "results_added": 0,
                        "external_results_added": 0,
                        "deadline_hit": false
                    }
                ],
                "deadline_hit": false
            },
            "review_intelligence": {
                "documents_fetched": 1,
                "external_documents_fetched": 0,
                "documents": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://felix.gripe/",
                        "host": "felix.gripe",
                        "title": "hello. | felix.gripe | I have some feedback…",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "is_direct_fallback": true,
                        "source_meta": {
                            "host": "felix.gripe",
                            "source_type": "official_site",
                            "label": "Official site",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": false,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 100,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string.",
                                "The site name or brand appears in the document."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1,
                        "body": "hello. | felix.gripe | I have some feedback… Skip to content felix.gripe Blog About Photos Runs Projects Contact Home Blog About Photos Runs Projects Contact I'm felix, a web designer and developer from the UK, now based in Athens. I made this blog to put some photos up and some thoughts down. bookamazingsci-fibrightontravelgiggreecepubathensdublinrunningistanbulturkiyehoveartfoodgalleryfilmcinema Blog Athens Greeknotes Mar 16 One good day in Petralona, but mostly laid up with a cold in sunny greece. 16 Mar 2026 The State of the Art by Iain M. Banks I saw discourse on bluesky about a radio 4 adaption which prompted me to realise I'd not read this one. What a joy it is to discover an un-read banks, king of sci-fi. 14 Mar 2026 Athens Greeknotes Mar 08 Athens in spring. Three bars, two greek classes, and one trip to the beach. 8 Mar 2026 Athens Greeknotes Mar 01 A short sunny but cold week in athens – school, books, an incredible art gallery and hanging out in pangrati. 1 Mar 2026 The Goulandris Museum of Modern Art Exceptional. A piece or two by pretty much every master artist you have heard of, cezanne, pissaro, miro, matisse, monet, picasso, rodin, latrec, degas, pollack, hepworth, lichtenstein etc. 1 Mar 2026 The Good Soldier by Ford Madox Ford Absolute cuck festival. Pretty depressing tale of uk/us aristo's behaving poorly with one another. 1 Mar 2026 Flowers for Algernon by Daniel Keyes Deeply affecting, I read it all in one evening. I can see why it won the Nebula and Hugo awards. 25 Feb 2026 Athens Greeknotes Feb 23 My first trip to a Saronic island – Aegina. Temples, food, deserted beaches, mountains, friends, sunshine, and an impressive amount of pistachio produce. 23 Feb 2026 Revelation Space by Alastair Reynolds A bit Iain Banks-ish in scale, but without the humour, violence, sex, or horror, unfortunately. I think this was his first book, and it looks like he's written loads more. A page turner despite being a bit too long. 22 Feb 2026 Exhalation: Stories by Ted Chiang I don't generally go in for short stories, but I took a punt on this one as it kept popping up in sci-fi book circles. 15 Feb 2026 Athens Greeknotes Feb 15 Starting in-person Greek lessons, an extreme old man bar, mein running shoe kampf, and a load of food and drink. 15 Feb 2026 Athens Greeknotes Feb 02 Une pote arrive , bangers and mash, living on plato's estate, and dogsitting cinnamon. 2 Feb 2026 Athens Greeknotes Jan 25 A deadly storm in athens cancels a trip to the ionian islands, so a boring week of indoor pursuits. New and old kafenions in petralona and iraklio, and a load of shopping for new gear. 25 Jan 2026 1600km shoe review – Saucony Endorphin Speed 3 I have run the arse off these things over the last 16 months. They have been pounded around the streets of istanbul, the length and breadth of athens, and up and down the seafront at brighton, and probably still have a few kms left in them if I kept gluing them back together. 24 Jan 2026 Mani: Travels in the Southern Peloponnese by Patrick Leigh Fermor The second book I’ve read by traveller, black ops war hero, philhellene, 100-cigarettes-a-day smoker, and notorious brothel creeper Patrick Leigh Fermor, this time is an account of his travels around the southern Peloponnese in the 1950s, specifically, the southern bit, Mani. 22 Jan 2026 Athens Greeknotes Jan 18 A cold but sunny week in athens featuring a protest in Petralona, the Benaki museum, traversing athens on foot through parts unknown, the acropolis, plaka and exarcheia. Also probably more souvlaki than is healthy. 18 Jan 2026 Dimitris Pikionis…",
                        "html": "<!DOCTYPE html><html lang=\"en\" class=\"hi-everybody bg-gray-900 min-h-[101dvh] text-gray-100 selection:bg-brand-200 selection:text-gray-950 [&_a]:text-brand-500 [&_a]:transition-colors [&_a]:duration-100 antialiased\"> <head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\"><link rel=\"shortcut icon\" href=\"/favicon.ico\"><link rel=\"manifest\" href=\"/manifest.json\"><link rel=\"canonical\" href=\"https://felix.gripe/\"><link rel=\"alternate\" type=\"application/rss+xml\" href=\"https://felix.gripe/rss.xml\"><link rel=\"apple-touch-icon\" href=\"/apple-touch-icon.png\"><link rel=\"icon\" sizes=\"192x192\" href=\"/192.png\"><title>hello. | felix.gripe | I have some feedback…</title><meta name=\"title\" content=\"hello. | felix.gripe\"><meta name=\"description\" content=\"I'm felix, a web designer and developer from the UK, now based in Athens. I made this blog to put some photos up and some thoughts down.\"><meta name=\"fediverse:creator\" content=\"@felixthehat@kafeneio.social\"><!-- Open Graph / Facebook --><!-- https://felix.gripe/.netlify/images?url=/sunset-stellar-cafe.jpg&w=800&h=600 --><meta property=\"og:type\" content=\"website\"><meta property=\"og:url\" content=\"https://felix.gripe/\"><meta property=\"og:title\" content=\"hello. | felix.gripe\"><meta property=\"og:image\" content=\"https://felix.gripe/1200x630.png\"><meta property=\"og:description\" content=\"I'm felix, a web designer and developer from the UK, now based in Athens. I made this blog to put some photos up and some thoughts down.\"><!-- Twitter --><meta property=\"twitter:card\" content=\"summary_large_image\"><meta property=\"twitter:url\" content=\"https://felix.gripe/\"><meta property=\"twitter:image\" content=\"https://felix.gripe/1200x630.png\"><meta property=\"twitter:title\" content=\"hello. | felix.gripe\"><meta property=\"twitter:description\" content=\"I'm felix, a web designer and developer from the UK, now based in Athens. I made this blog to put some photos up and some thoughts down.\"><!-- Google schema --><script type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"Person\",\"image\":\"https://felix.gripe/'https://felix.gripe/1200x630.png\",\"logo\":\"https://felix.gripe/512.png\",\"name\":\"felix.gripe\",\"description\":\"I have some feedback…\",\"url\":\"https://felix.gripe/\",\"sameAs\":[\"https://kafeneio.social/@felixthehat\",\"https://pixelfed.social/felixthehat\",\"https://bsky.felix.gripe\",\"mailto:spam@felix.gripe\",\"/rss.xml\"]}</script><script defer data-domain=\"felix.gripe\" src=\"/js/script.js\"></script><link rel=\"stylesheet\" href=\"/_astro/Layout.7GqRL_70.css\"> <style>:where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}} </style><style>[data-astro-transition-scope=\"astro-rzuhqfr5-1\"] { view-transition-name: media-image-athens-greeknotes-2026-03-16; }@layer astro { ::view-transition-old(media-image-athens-greeknotes-2026-03-16) { animation-duration: 180ms; animation-timing-function: cubic-bezier(0.76, 0, 0.24, 1); animation-fill-mode: both; animation-name: astroFadeOut; }::view-transition-new(media-image-athens-greeknotes-2026-03-16) { animation-duration: 180ms; animation-timing-function: cubic-bezier(0.76, 0, 0.24, 1); animation-fill-mode: both; animation-name: astroFadeIn; }[data-astro-transition=back]::view-transition-old(media-image-athens-greeknotes-2026-03-16) { animation-duration: 180ms; animation-timing-function: cubic-bezier(0.76, 0, 0.24, 1); animation-fill-mode: both; animation-name: astroFadeOut; }[data-astro-transition=back]::view-transition-new(media-image-athens-greeknotes-2026-03-16) { animation-duration: 180ms; animation-timing-function: cubic-bezier(0.76, 0, 0.24, 1); animation-fill-mode: both; animation-name: astroFadeIn; } }[data-astro-transition-fallback=\"old\"] [data-astro-transition-scope=\"astro-rzuhqfr5-1\"], [data-astro-transition-fallback=\"old\"][data-astro-transition-scope=\"astro-rzuhqfr5-1\"] { animation-duration: 180ms; animation-timing-function: cubic-bezier(0.76, 0, 0.24, 1); animation-fill-mode: both; animation-name: astroFadeOut; }[data-astro-transition-fallback=\"new\"] [data-astro-transition-scope=\"astro-rzuhqfr5-1\"], [data-astro-transition-fallback=\"new\"][data-astro-transition-scope=\"astro-rzuhqfr5-1\"] { animation-duration: 180ms; animation-timing-function: cubic-bez…",
                        "status_code": 200,
                        "final_url": "https://felix.gripe/"
                    }
                ],
                "facts": [],
                "ignored_candidates": [],
                "blocked_candidates": 0,
                "source_diversity": 0,
                "host_coverage": 1,
                "source_type_coverage": 1,
                "exact_match_documents": 1,
                "external_exact_match_documents": 0,
                "elapsed_ms": 80,
                "candidates_considered": 1,
                "fetch_success_rate": 100,
                "avg_source_trust": 55,
                "avg_entity_score": 100
            },
            "provider_enrichment": {
                "providers": {
                    "safebrowsing": {
                        "status": "disabled"
                    },
                    "abuseipdb": {
                        "status": "ok",
                        "confidence": 58,
                        "ip": "75.2.60.5",
                        "abuse_confidence_score": 6,
                        "total_reports": 2,
                        "last_reported_at": "2026-03-15T14:04:02+00:00",
                        "country_code": "US",
                        "usage_type": "Content Delivery Network",
                        "isp": "Amazon.com, Inc.",
                        "domain": "amazon.com",
                        "budget": {
                            "provider": "abuseipdb",
                            "window_key": "2026-03-19",
                            "used": 190,
                            "limit": 850,
                            "remaining": 660,
                            "updated_at": "2026-03-19T05:49:50+00:00"
                        },
                        "facts": [],
                        "highlights": [],
                        "citations": [
                            {
                                "title": "AbuseIPDB IP reputation check",
                                "url": "https://docs.abuseipdb.com/",
                                "host": "docs.abuseipdb.com",
                                "snippet": "Primary IP 75.2.60.5 scored 6/100 with 2 report(s).",
                                "source_type": "api_reputation"
                            }
                        ],
                        "cached": true
                    },
                    "ipinfo": {
                        "status": "ok",
                        "confidence": 54,
                        "ip": "75.2.60.5",
                        "asn": "AS16509",
                        "as_name": "Amazon.com, Inc.",
                        "as_domain": "amazon.com",
                        "country_code": "US",
                        "country": "United States",
                        "region": "",
                        "city": "",
                        "flags": [],
                        "highlights": [
                            "IPinfo resolved the primary IP to US on AS16509."
                        ],
                        "citations": [
                            {
                                "title": "IPinfo IP enrichment",
                                "url": "https://ipinfo.io/developers",
                                "host": "ipinfo.io",
                                "snippet": "Primary IP 75.2.60.5 geolocates to US.",
                                "source_type": "ip_enrichment"
                            }
                        ],
                        "cached": true
                    },
                    "censys": {
                        "status": "disabled"
                    },
                    "sslmate": {
                        "status": "error",
                        "error": "HTTP 429: {\"code\":\"rate_limited\",\"message\":\"You have exceeded the domain search rate limit for the SSLMate CT Search API. Please try again later, or upgrade your Cert Spotter plan by visiting .\"}",
                        "cached": true
                    }
                },
                "facts": [],
                "citations": [
                    {
                        "title": "AbuseIPDB IP reputation check",
                        "url": "https://docs.abuseipdb.com/",
                        "host": "docs.abuseipdb.com",
                        "snippet": "Primary IP 75.2.60.5 scored 6/100 with 2 report(s).",
                        "source_type": "api_reputation"
                    },
                    {
                        "title": "IPinfo IP enrichment",
                        "url": "https://ipinfo.io/developers",
                        "host": "ipinfo.io",
                        "snippet": "Primary IP 75.2.60.5 geolocates to US.",
                        "source_type": "ip_enrichment"
                    }
                ],
                "highlights": [
                    "IPinfo resolved the primary IP to US on AS16509."
                ],
                "resolved_ips": [
                    "75.2.60.5",
                    "99.83.231.61"
                ],
                "primary_ip": "75.2.60.5",
                "quality": {
                    "provider_diversity_score": 50,
                    "provider_confidence_score": 56,
                    "provider_fact_count": 0
                }
            },
            "evidence": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "tag_support": [],
                "top_supporting_facts": [],
                "top_positive_facts": []
            },
            "quality": {
                "source_diversity_score": 0,
                "entity_coverage_score": 100,
                "freshness_score": 18,
                "confidence": 25,
                "documents_fetched": 1,
                "external_documents_fetched": 0,
                "fact_count": 0,
                "avg_source_trust": 55,
                "avg_entity_score": 100,
                "fetch_success_rate": 100,
                "exact_match_score": 0,
                "query_coverage_score": 20,
                "host_coverage_score": 20,
                "source_type_coverage_score": 25,
                "qualified_evidence_score": 0,
                "exact_match_documents": 0,
                "blocked_candidates": 0,
                "used_direct_fallback": true,
                "external_results_found": 0,
                "provider_diversity_score": 50,
                "provider_confidence_score": 56,
                "provider_fact_count": 0
            },
            "decision": {
                "state": "insufficient",
                "uncertainty": true,
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "supports": {
                    "dangerous": false,
                    "scam": false,
                    "spam": false,
                    "nsfw": false,
                    "trusted": false
                },
                "evidence_quality": "low",
                "state_label": "Inconclusive",
                "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
            },
            "signals": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "highlights": [
                    "IPinfo resolved the primary IP to US on AS16509.",
                    "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                ]
            },
            "citations": [
                {
                    "title": "AbuseIPDB IP reputation check",
                    "url": "https://docs.abuseipdb.com/",
                    "host": "docs.abuseipdb.com",
                    "snippet": "Primary IP 75.2.60.5 scored 6/100 with 2 report(s).",
                    "source_type": "api_reputation"
                },
                {
                    "title": "IPinfo IP enrichment",
                    "url": "https://ipinfo.io/developers",
                    "host": "ipinfo.io",
                    "snippet": "Primary IP 75.2.60.5 geolocates to US.",
                    "source_type": "ip_enrichment"
                }
            ],
            "urlscan": {
                "domain": "felix.gripe",
                "status": "error",
                "submitted_at": "2026-03-19T21:45:08+00:00",
                "completed_at": null,
                "last_checked_at": "2026-03-19T21:45:08+00:00",
                "last_error": "Rate limit for 'public' exceeded. Limit is 5000 per day. Reset in 8091 seconds.",
                "submitted_url": "https://felix.gripe/",
                "uuid": "",
                "result_url": "",
                "api_result_url": "",
                "visibility": "public",
                "summary": "urlscan.io scan submission failed.",
                "report": [],
                "report_summary": [],
                "is_fresh": false,
                "can_retry": false,
                "poll_after_seconds": 20
            },
            "eligibility": {
                "budget_ms": 4200,
                "search_budget_ms": 1600,
                "review_budget_ms": 2600,
                "query_cap": 2,
                "provider_cap": 1,
                "result_cap": 6,
                "review_document_cap": 4,
                "search_connect_timeout": 2,
                "search_timeout": 3,
                "review_connect_timeout": 2,
                "review_timeout": 3,
                "allowed": true,
                "mode": "normal",
                "decision_code": "run_normal",
                "reason": "interactive-refresh",
                "summary": "Running a standard intelligence pass because the current signals need third-party corroboration. The TLD is uncommon, so Website-Rank starts with a smaller budget.",
                "cooldown": {
                    "active": false,
                    "empty_attempts": 0,
                    "next_allowed_at": "",
                    "reason": "",
                    "provider_retry_at": ""
                },
                "suffix": {
                    "tld": "gripe",
                    "registered_suffix": "gripe",
                    "class": "unknown",
                    "reserved": false
                },
                "signals": {
                    "trust_score": 0,
                    "quality_score": 0,
                    "safety_score": 0,
                    "fraud_score": 0,
                    "spam_score": 0,
                    "nsfw_score": 0,
                    "score_confidence": 0,
                    "risk_label": "good",
                    "crawl_blocked": false,
                    "last_http_status": 200,
                    "content_word_count": 4595,
                    "internal_links_count": 38,
                    "site_name": "",
                    "title": "hello. | felix.gripe | I have some feedback…",
                    "is_tracked": false
                }
            },
            "cooldown": {
                "empty_attempts": 1,
                "next_allowed_at": "2026-03-26T21:45:08+00:00",
                "reason": "Recent intelligence runs produced no qualified third-party evidence, so retries are cooled down to save budget.",
                "provider_retry_at": "",
                "last_reason": "interactive-refresh"
            },
            "debug": {
                "top_supporting_facts": [],
                "top_positive_facts": [],
                "ignored_candidates": [],
                "budget_ms": 4200,
                "search_budget_ms": 1600,
                "review_budget_ms": 2600,
                "search_mode": "interactive-refresh",
                "query_cap": 2,
                "provider_cap": 1,
                "result_cap": 6,
                "review_document_cap": 4,
                "reason": "interactive-refresh",
                "priority": 75,
                "eligibility_decision": "run_normal",
                "provider_statuses": {
                    "safebrowsing": "disabled",
                    "abuseipdb": "ok",
                    "ipinfo": "ok",
                    "censys": "disabled",
                    "sslmate": "error"
                }
            },
            "last_good": {
                "checked_at": "2026-03-19T21:45:08+00:00",
                "summary": "External checks ran, but the verified result set was still too sparse to harden the verdict.",
                "decision": {
                    "state": "insufficient",
                    "uncertainty": true,
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "supports": {
                        "dangerous": false,
                        "scam": false,
                        "spam": false,
                        "nsfw": false,
                        "trusted": false
                    },
                    "evidence_quality": "low",
                    "state_label": "Inconclusive",
                    "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
                },
                "signals": {
                    "scores": {
                        "legit": 0,
                        "safe": 0,
                        "trusted": 0,
                        "caution": 0,
                        "scam": 0,
                        "dangerous": 0,
                        "spam": 0,
                        "nsfw": 0
                    },
                    "counts": {
                        "official_presence": 0,
                        "business_profiles": 0,
                        "positive_reviews": 0,
                        "negative_reviews": 0,
                        "scam_reports": 0,
                        "dangerous_reports": 0,
                        "spam_reports": 0,
                        "adult_reports": 0
                    },
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "highlights": [
                        "IPinfo resolved the primary IP to US on AS16509.",
                        "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                    ]
                },
                "citations": [
                    {
                        "title": "AbuseIPDB IP reputation check",
                        "url": "https://docs.abuseipdb.com/",
                        "host": "docs.abuseipdb.com",
                        "snippet": "Primary IP 75.2.60.5 scored 6/100 with 2 report(s).",
                        "source_type": "api_reputation"
                    },
                    {
                        "title": "IPinfo IP enrichment",
                        "url": "https://ipinfo.io/developers",
                        "host": "ipinfo.io",
                        "snippet": "Primary IP 75.2.60.5 geolocates to US.",
                        "source_type": "ip_enrichment"
                    }
                ]
            }
        },
        "external_decision": {
            "state": "insufficient",
            "uncertainty": true,
            "candidate_support": 0,
            "candidate_contradiction": 0,
            "supports": {
                "dangerous": false,
                "scam": false,
                "spam": false,
                "nsfw": false,
                "trusted": false
            },
            "evidence_quality": "low",
            "state_label": "Inconclusive",
            "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
        },
        "signal_scores": [
            {
                "label": "Strongest tag heuristic",
                "value": "T · 76%",
                "tone": "good",
                "detail": "The highest raw tag match from the heuristic engine before visibility thresholds and manual overrides."
            },
            {
                "label": "Trust score",
                "value": "56/100",
                "tone": "caution",
                "detail": "Confidence derived from authority, crawl quality, stability, and risk signals."
            },
            {
                "label": "Authority score",
                "value": "42/100",
                "tone": "caution",
                "detail": "A higher authority score usually means broader reputation and backlink confidence."
            },
            {
                "label": "Spam risk",
                "value": "15/100",
                "tone": "good",
                "detail": "Lower is better. This blends spam indicators with false-positive protections for legitimate sites."
            },
            {
                "label": "Quality score",
                "value": "90/100",
                "tone": "good",
                "detail": "Based on crawl quality, content completeness, and technical evidence."
            },
            {
                "label": "Safety score",
                "value": "100/100",
                "tone": "good",
                "detail": "Higher is safer. Direct fraud signals can heavily cap this even when SEO signals look strong."
            },
            {
                "label": "Fraud score",
                "value": "1/100",
                "tone": "good",
                "detail": "Lower is better. This reflects phishing, drainer, fake-support, fake-shop, and malware signals."
            },
            {
                "label": "Infrastructure risk",
                "value": "5/100",
                "tone": "good",
                "detail": "Lower is better. This reflects the IP, registrar, and nameserver neighbourhood seen by the crawler."
            },
            {
                "label": "Evidence confidence",
                "value": "100/100",
                "tone": "good",
                "detail": "Higher means the crawler had enough pages and registry evidence to make a stronger call."
            },
            {
                "label": "External evidence",
                "value": "Low",
                "tone": "unknown",
                "detail": "Quality of the structured search and review evidence cluster."
            },
            {
                "label": "External decision",
                "value": "Inconclusive",
                "tone": "unknown",
                "detail": "How third-party evidence compares with the current candidate tag."
            },
            {
                "label": "NSFW score",
                "value": "0/100",
                "tone": "good",
                "detail": "Context-aware adult-content detection with medical / educational false-positive reduction."
            },
            {
                "label": "Registry stability",
                "value": "100/100",
                "tone": "good",
                "detail": "Based on age, expiry runway, and the amount of ownership / registrar churn."
            }
        ],
        "signal_sections": [
            {
                "title": "Registry & ownership",
                "items": [
                    {
                        "label": "Domain age",
                        "value": "2.2 years",
                        "tone": "caution",
                        "detail": "Older domains generally carry more historical trust than very new ones."
                    },
                    {
                        "label": "Stability score",
                        "value": "100/100",
                        "tone": "good",
                        "detail": "Penalised by registrar, ownership, and nameserver churn."
                    },
                    {
                        "label": "Days to expiry",
                        "value": "304",
                        "tone": "good",
                        "detail": "Very short renewal windows can be a weak trust signal."
                    },
                    {
                        "label": "Registrar / ownership changes",
                        "value": "0 / 0",
                        "tone": "good",
                        "detail": "Frequent ownership churn can weaken trust."
                    },
                    {
                        "label": "Nameserver changes",
                        "value": "0",
                        "tone": "good",
                        "detail": "Repeated infrastructure changes can indicate instability."
                    },
                    {
                        "label": "DNSSEC / privacy",
                        "value": "DNSSEC off · privacy off",
                        "tone": "caution",
                        "detail": "DNSSEC strengthens DNS trust; privacy is neutral on its own."
                    }
                ]
            },
            {
                "title": "Reputation & search evidence",
                "items": [
                    {
                        "label": "Backlinks",
                        "value": "1",
                        "tone": "unknown",
                        "detail": "Broader backlink evidence usually improves confidence."
                    },
                    {
                        "label": "Referring domains",
                        "value": "1",
                        "tone": "unknown",
                        "detail": "Unique linking domains are more useful than raw link volume."
                    },
                    {
                        "label": "Organic keywords",
                        "value": "82",
                        "tone": "caution",
                        "detail": "Search footprint helps distinguish real sites from thin shells."
                    },
                    {
                        "label": "Indexed pages",
                        "value": "50",
                        "tone": "caution",
                        "detail": "Larger index coverage usually means more evidence to classify from."
                    },
                    {
                        "label": "Brand strength",
                        "value": "69/100",
                        "tone": "good",
                        "detail": "Stronger brand signals reduce false positives for legitimate sites."
                    },
                    {
                        "label": "Risk label",
                        "value": "GOOD",
                        "tone": "unknown",
                        "detail": "This is the raw crawl / heuristic risk label feeding the tag model."
                    }
                ]
            },
            {
                "title": "Crawl, content & technicals",
                "items": [
                    {
                        "label": "HTTP status",
                        "value": "200",
                        "tone": "good",
                        "detail": "Healthy responses make classification more reliable."
                    },
                    {
                        "label": "HTTPS / speed",
                        "value": "HTTPS OK · 486 ms",
                        "tone": "good",
                        "detail": "Slow or broken technical signals weaken confidence."
                    },
                    {
                        "label": "Content words",
                        "value": "4,616",
                        "tone": "good",
                        "detail": "Thin pages are harder to trust and easier to manipulate."
                    },
                    {
                        "label": "Schema / structure",
                        "value": "1 schema · meta · H1",
                        "tone": "caution",
                        "detail": "Structured markup and basic on-page hygiene improve quality confidence."
                    },
                    {
                        "label": "Links on page",
                        "value": "38 internal · 2 external",
                        "tone": "good",
                        "detail": "Link patterns help detect thin directories and promo pages."
                    },
                    {
                        "label": "Page speed / mobile",
                        "value": "92/100 · 91/100",
                        "tone": "good",
                        "detail": "Better technical quality generally reduces low-effort site patterns."
                    },
                    {
                        "label": "Crawl access",
                        "value": "Open",
                        "tone": "good",
                        "detail": "The crawler reached the site without an anti-bot challenge."
                    }
                ]
            },
            {
                "title": "External evidence & explainability",
                "items": [
                    {
                        "label": "Decision state",
                        "value": "Inconclusive",
                        "tone": "unknown",
                        "detail": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
                    },
                    {
                        "label": "Evidence quality",
                        "value": "Low",
                        "tone": "unknown",
                        "detail": "Blends source trust, domain matching, evidence diversity, and freshness."
                    },
                    {
                        "label": "Support vs contradiction",
                        "value": "0 / 0",
                        "tone": "unknown",
                        "detail": "Compares how much structured external evidence supports the candidate tag against evidence that contradicts it."
                    },
                    {
                        "label": "Qualified risk sources",
                        "value": "No",
                        "tone": "good",
                        "detail": "Risk tags only promote from external evidence when source diversity or source trust thresholds are met."
                    },
                    {
                        "label": "Uncertainty buffer",
                        "value": "Active",
                        "tone": "caution",
                        "detail": "Prevents thin or mixed external evidence from forcing a stronger tag than the evidence can justify."
                    }
                ]
            }
        ],
        "positives": [
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ]
    },
    "traffic_confidence": 60,
    "whois": {
        "current": {
            "id": 41674,
            "domain": "felix.gripe",
            "source_type": "rdap",
            "rdap_url": "https://rdap.identitydigital.services/rdap/domain/felix.gripe",
            "registrar_name": "Porkbun LLC",
            "registrar_handle": "1861",
            "registrant_name": "",
            "registrant_org": "",
            "registrant_country": "",
            "registrant_email": "",
            "abuse_email": "abuse+registry@porkbun.com",
            "created_date": "2024-02-16 09:05:39",
            "updated_date": "2026-02-20 02:20:57",
            "expires_date": "2027-02-16 09:05:39",
            "nameservers_json": "[\"curitiba.ns.porkbun.com\",\"fortaleza.ns.porkbun.com\",\"maceio.ns.porkbun.com\",\"salvador.ns.porkbun.com\"]",
            "status_json": "[\"client delete prohibited\",\"client transfer prohibited\"]",
            "dnssec": "unsigned",
            "privacy_protected": 0,
            "content_hash": "93a845cc03598a16497f2cc166fd92f61151277504c423bd074c6fec0f2b6beb",
            "history_count": 1,
            "last_checked_at": "2026-03-19 21:45:08",
            "last_changed_at": "2026-03-19 21:45:08",
            "created_at": "2026-03-19 21:45:09",
            "updated_at": "2026-03-19 21:45:09"
        },
        "history": [
            {
                "id": 42559,
                "domain": "felix.gripe",
                "source_type": "rdap",
                "registrar_name": "Porkbun LLC",
                "registrar_handle": "1861",
                "registrant_name": "",
                "registrant_org": "",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "abuse+registry@porkbun.com",
                "created_date": "2024-02-16 09:05:39",
                "updated_date": "2026-02-20 02:20:57",
                "expires_date": "2027-02-16 09:05:39",
                "nameservers_json": "[\"curitiba.ns.porkbun.com\",\"fortaleza.ns.porkbun.com\",\"maceio.ns.porkbun.com\",\"salvador.ns.porkbun.com\"]",
                "status_json": "[\"client delete prohibited\",\"client transfer prohibited\"]",
                "dnssec": "unsigned",
                "privacy_protected": 0,
                "content_hash": "93a845cc03598a16497f2cc166fd92f61151277504c423bd074c6fec0f2b6beb",
                "checked_at": "2026-03-19 21:45:08",
                "change_summary": "Initial WHOIS snapshot captured.",
                "created_at": "2026-03-19 21:45:08"
            }
        ],
        "signals": {
            "age_years": 2.2,
            "days_to_expiry": 304,
            "days_since_last_registry_update": 56,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": false,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 4,
            "status_count": 2
        }
    },
    "discovered_domain": {
        "id": 80615,
        "domain": "felix.gripe",
        "first_seen_at": "2026-03-15 20:24:39",
        "last_crawled_at": "2026-03-31 06:01:58",
        "last_title": "hello. | felix.gripe | I have some feedback…",
        "last_http_status": 200,
        "discovered_from_domain": "personalsit.es",
        "depth": 0,
        "backlinks_count": 1,
        "rating_cache": 54,
        "spam_score": 0,
        "risk_label": "good",
        "category_name": "Art & Design",
        "primary_country_code": "",
        "internal_links_count": 38,
        "external_links_count": 2,
        "social_profiles_count": 0,
        "content_word_count": 4616,
        "title_quality_score": 93,
        "has_meta_description": 1,
        "has_h1": 1,
        "language_code": "en",
        "response_time_ms": 486,
        "robots_status": 200,
        "sitemap_status": 404,
        "sitemap_total_urls": 0,
        "quality_score": 90,
        "site_name": "",
        "canonical_domain": "",
        "favicon_present": 1,
        "schema_org_count": 1,
        "noindex_detected": 0,
        "feed_links_count": 1,
        "https_working": 1,
        "estimated_authority_score": 38,
        "trust_score": 74,
        "nsfw_score": 0,
        "overall_rank_estimate": 2280110,
        "primary_tag": "C",
        "tag_codes": "C,T,Uncertain",
        "manual_verified_status": "",
        "manual_tag_codes": "",
        "manual_rating_delta": 0,
        "manual_authority_delta": 0,
        "manual_trust_delta": 0,
        "manual_note": null,
        "manual_adjusted_by": null,
        "manual_adjusted_at": null,
        "manual_lock_scores": 0,
        "manual_lock_flags": 0,
        "crawl_blocked": 0,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": null,
        "safety_score": 100,
        "fraud_score": 1,
        "legitimacy_score": 45,
        "infrastructure_risk_score": 5,
        "score_confidence": 100,
        "tag_confidence": 72,
        "category_confidence": 18,
        "deep_crawl_pages": 30,
        "resolved_ip": "75.2.60.5",
        "category_candidates_json": "[{\"category\":\"Art & Design\",\"score\":17},{\"category\":\"E-commerce\",\"score\":17},{\"category\":\"Personal\",\"score\":6},{\"category\":\"Personal\",\"score\":6}]",
        "page_signals_json": "[{\"path\":\"/about\",\"status\":200,\"title\":\"About | felix.gripe | I have some feedback…\",\"word_count\":437,\"summary_text\":\"About | felix.gripe | I have some feedback… About | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]}:where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyframes astroFadeInOut{0\",\"classification_terms\":[\"about\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/contact\",\"status\":200,\"title\":\"Contact | felix.gripe | I have some feedback…\",\"word_count\":125,\"summary_text\":\"Contact | felix.gripe | I have some feedback… Contact | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} Skip to content felix.gr\",\"classification_terms\":[\"contact\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/blog\",\"status\":200,\"title\":\"Blog | felix.gripe | I have some feedback…\",\"word_count\":72195,\"summary_text\":\"Blog | felix.gripe | I have some feedback… Blog | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyframes astroFadeInOut{0\",\"classification_terms\":[\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":741,\"depth\":1},{\"path\":\"/photos\",\"status\":200,\"title\":\"Photos | felix.gripe | I have some feedback…\",\"word_count\":915,\"summary_text\":\"Photos | felix.gripe | I have some feedback… Photos | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} Skip to content felix.gri\",\"classification_terms\":[\"photos\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/runs\",\"status\":200,\"title\":\"Runs | felix.gripe | I have some feedback…\",\"word_count\":4212,\"summary_text\":\"Runs | felix.gripe | I have some feedback… Runs | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} Skip to content felix.gripe\",\"classification_terms\":[\"runs\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":271,\"depth\":1},{\"path\":\"/projects\",\"status\":200,\"title\":\"Projects | felix.gripe | I have some feedback…\",\"word_count\":248,\"summary_text\":\"Projects | felix.gripe | I have some feedback… Projects | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} Skip to content felix.g\",\"classification_terms\":[\"projects\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":0,\"depth\":1},{\"path\":\"/tags/\",\"status\":200,\"title\":\"Tags | felix.gripe | I have some feedback…\",\"word_count\":33072,\"summary_text\":\"Tags | felix.gripe | I have some feedback… Tags | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} Skip to content felix.gripe\",\"classification_terms\":[\"tags\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":7,\"depth\":1},{\"path\":\"/blog/\",\"status\":200,\"title\":\"Blog | felix.gripe | I have some feedback…\",\"word_count\":72195,\"summary_text\":\"Blog | felix.gripe | I have some feedback… Blog | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyframes astroFadeInOut{0\",\"classification_terms\":[\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":0,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":741,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-03-29/\",\"status\":200,\"title\":\"Athens Greeknotes Mar 29 | felix.gripe | I have some feedback…\",\"word_count\":1197,\"summary_text\":\"Athens Greeknotes Mar 29 | felix.gripe | I have some feedback… Athens Greeknotes Mar 29 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-03-29\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":4,\"depth\":1},{\"path\":\"/blog/mrs-dalloway-by-virginia-woolf/\",\"status\":200,\"title\":\"Mrs Dalloway by Virginia Woolf | felix.gripe | I have some feedback…\",\"word_count\":766,\"summary_text\":\"Mrs Dalloway by Virginia Woolf | felix.gripe | I have some feedback… Mrs Dalloway by Virginia Woolf | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @\",\"classification_terms\":[\"blog/mrs-dalloway-by-virginia-woolf\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":12,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-03-22/\",\"status\":200,\"title\":\"Athens Greeknotes Mar 22 | felix.gripe | I have some feedback…\",\"word_count\":1131,\"summary_text\":\"Athens Greeknotes Mar 22 | felix.gripe | I have some feedback… Athens Greeknotes Mar 22 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-03-22\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":8,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-03-16/\",\"status\":200,\"title\":\"Athens Greeknotes Mar 16 | felix.gripe | I have some feedback…\",\"word_count\":999,\"summary_text\":\"Athens Greeknotes Mar 16 | felix.gripe | I have some feedback… Athens Greeknotes Mar 16 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-03-16\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":8,\"depth\":1},{\"path\":\"/blog/the-state-of-the-art-by-iain-m-banks/\",\"status\":200,\"title\":\"The State of the Art by Iain M. Banks | felix.gripe | I have some feedback…\",\"word_count\":787,\"summary_text\":\"The State of the Art by Iain M. Banks | felix.gripe | I have some feedback… The State of the Art by Iain M. Banks | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-\",\"classification_terms\":[\"blog/the-state-of-the-art-by-iain-m-banks\",\"about\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":12,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-03-08/\",\"status\":200,\"title\":\"Athens Greeknotes Mar 08 | felix.gripe | I have some feedback…\",\"word_count\":1022,\"summary_text\":\"Athens Greeknotes Mar 08 | felix.gripe | I have some feedback… Athens Greeknotes Mar 08 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-03-08\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":8,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-03-01/\",\"status\":200,\"title\":\"Athens Greeknotes Mar 01 | felix.gripe | I have some feedback…\",\"word_count\":1060,\"summary_text\":\"Athens Greeknotes Mar 01 | felix.gripe | I have some feedback… Athens Greeknotes Mar 01 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-03-01\",\"blog\",\"gallery\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":8,\"depth\":1},{\"path\":\"/blog/the-goulandris-museum-of-modern-art/\",\"status\":200,\"title\":\"The Goulandris Museum of Modern Art | felix.gripe | I have some feedback…\",\"word_count\":865,\"summary_text\":\"The Goulandris Museum of Modern Art | felix.gripe | I have some feedback… The Goulandris Museum of Modern Art | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-do\",\"classification_terms\":[\"blog/the-goulandris-museum-of-modern-art\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":7,\"depth\":1},{\"path\":\"/blog/the-good-soldier-by-ford-madox-ford/\",\"status\":200,\"title\":\"The Good Soldier by Ford Madox Ford | felix.gripe | I have some feedback…\",\"word_count\":732,\"summary_text\":\"The Good Soldier by Ford Madox Ford | felix.gripe | I have some feedback… The Good Soldier by Ford Madox Ford | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-do\",\"classification_terms\":[\"blog/the-good-soldier-by-ford-madox-ford\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":2,\"depth\":1},{\"path\":\"/blog/flowers-for-algernon-by-daniel-keyes/\",\"status\":200,\"title\":\"Flowers for Algernon by Daniel Keyes | felix.gripe | I have some feedback…\",\"word_count\":722,\"summary_text\":\"Flowers for Algernon by Daniel Keyes | felix.gripe | I have some feedback… Flowers for Algernon by Daniel Keyes | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-d\",\"classification_terms\":[\"blog/flowers-for-algernon-by-daniel-keyes\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":7,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-02-23/\",\"status\":200,\"title\":\"Athens Greeknotes Feb 23 | felix.gripe | I have some feedback…\",\"word_count\":1282,\"summary_text\":\"Athens Greeknotes Feb 23 | felix.gripe | I have some feedback… Athens Greeknotes Feb 23 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-02-23\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":3,\"depth\":1},{\"path\":\"/blog/revelation-space-by-alastair-reynolds/\",\"status\":200,\"title\":\"Revelation Space by Alastair Reynolds | felix.gripe | I have some feedback…\",\"word_count\":781,\"summary_text\":\"Revelation Space by Alastair Reynolds | felix.gripe | I have some feedback… Revelation Space by Alastair Reynolds | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-\",\"classification_terms\":[\"blog/revelation-space-by-alastair-reynolds\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":7,\"depth\":1},{\"path\":\"/blog/exhalation-stories-by-ted-chiang/\",\"status\":200,\"title\":\"Exhalation: Stories by Ted Chiang | felix.gripe | I have some feedback…\",\"word_count\":859,\"summary_text\":\"Exhalation: Stories by Ted Chiang | felix.gripe | I have some feedback… Exhalation: Stories by Ted Chiang | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down\",\"classification_terms\":[\"blog/exhalation-stories-by-ted-chiang\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":7,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-02-15/\",\"status\":200,\"title\":\"Athens Greeknotes Feb 15 | felix.gripe | I have some feedback…\",\"word_count\":1417,\"summary_text\":\"Athens Greeknotes Feb 15 | felix.gripe | I have some feedback… Athens Greeknotes Feb 15 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-02-15\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":8,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-02-02/\",\"status\":200,\"title\":\"Athens Greeknotes Feb 02 | felix.gripe | I have some feedback…\",\"word_count\":1164,\"summary_text\":\"Athens Greeknotes Feb 02 | felix.gripe | I have some feedback… Athens Greeknotes Feb 02 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-02-02\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":13,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-01-25/\",\"status\":200,\"title\":\"Athens Greeknotes Jan 25 | felix.gripe | I have some feedback…\",\"word_count\":1316,\"summary_text\":\"Athens Greeknotes Jan 25 | felix.gripe | I have some feedback… Athens Greeknotes Jan 25 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-01-25\",\"blog\",\"shop\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":8,\"depth\":1},{\"path\":\"/blog/1600km-shoe-review-saucony-endorphin-speed-3/\",\"status\":200,\"title\":\"1600km shoe review – Saucony Endorphin Speed 3 | felix.gripe | I have some feedback…\",\"word_count\":912,\"summary_text\":\"1600km shoe review – Saucony Endorphin Speed 3 | felix.gripe | I have some feedback… 1600km shoe review – Saucony Endorphin Speed 3 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-f\",\"classification_terms\":[\"blog/1600km-shoe-review-saucony-endorphin-speed-3\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":7,\"depth\":1},{\"path\":\"/blog/mani-travels-in-the-southern-peloponnese-by-patrick-leigh-fermor/\",\"status\":200,\"title\":\"Mani: Travels in the Southern Peloponnese by Patrick Leigh Fermor | felix.gripe | I have some feedback…\",\"word_count\":990,\"summary_text\":\"Mani: Travels in the Southern Peloponnese by Patrick Leigh Fermor | felix.gripe | I have some feedback… Mani: Travels in the Southern Peloponnese by Patrick Leigh Fermor | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=s\",\"classification_terms\":[\"blog/mani-travels-in-the-southern-peloponnese-by-patrick-leigh-fermor\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":2,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-01-18/\",\"status\":200,\"title\":\"Athens Greeknotes Jan 18 | felix.gripe | I have some feedback…\",\"word_count\":1359,\"summary_text\":\"Athens Greeknotes Jan 18 | felix.gripe | I have some feedback… Athens Greeknotes Jan 18 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-01-18\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":9,\"depth\":1},{\"path\":\"/blog/benaki-museum-pireos/\",\"status\":200,\"title\":\"Dimitris Pikionis at the Benaki Museum Pireos | felix.gripe | I have some feedback…\",\"word_count\":858,\"summary_text\":\"Dimitris Pikionis at the Benaki Museum Pireos | felix.gripe | I have some feedback… Dimitris Pikionis at the Benaki Museum Pireos | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fi\",\"classification_terms\":[\"blog/benaki-museum-pireos\",\"api\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":8,\"depth\":1},{\"path\":\"/blog/athens-greeknotes-2026-01-11/\",\"status\":200,\"title\":\"Athens Greeknotes Jan 11 | felix.gripe | I have some feedback…\",\"word_count\":1230,\"summary_text\":\"Athens Greeknotes Jan 11 | felix.gripe | I have some feedback… Athens Greeknotes Jan 11 | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down} @keyfra\",\"classification_terms\":[\"blog/athens-greeknotes-2026-01-11\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":8,\"depth\":1},{\"path\":\"/blog/end-of-year-notes-2025-wrapped/\",\"status\":200,\"title\":\"2025 Wrapped – my year in stats | felix.gripe | I have some feedback…\",\"word_count\":2600,\"summary_text\":\"2025 Wrapped – my year in stats | felix.gripe | I have some feedback… 2025 Wrapped – my year in stats | felix.gripe | I have some feedback…{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Person\\\",\\\"image\\\":\\\"https://felix.gripe/'https://felix.gripe/1200x630.png\\\",\\\"logo\\\":\\\"https://felix.gripe/512.png\\\",\\\"name\\\":\\\"felix.gripe\\\",\\\"description\\\":\\\"I have some feedback…\\\",\\\"url\\\":\\\"https://felix.gripe/\\\",\\\"sameAs\\\":[\\\"https://kafeneio.social/@felixthehat\\\",\\\"https://pixelfed.social/felixthehat\\\",\\\"https://bsky.felix.gripe\\\",\\\"mailto:spam@felix.gripe\\\",\\\"/rss.xml\\\"]} :where([data-astro-image]){height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}[data-astro-image-fit=fill]{object-fit:fill}[data-astro-image-fit=contain]{object-fit:contain}[data-astro-image-fit=cover]{object-fit:cover}[data-astro-image-fit=scale-down]{object-fit:scale-down}\",\"classification_terms\":[\"blog/end-of-year-notes-2025-wrapped\",\"blog\"],\"external_refs\":[],\"password_input_count\":0,\"email_input_count\":1,\"tel_input_count\":0,\"otp_term_count\":0,\"login_form_count\":0,\"checkout_form_count\":0,\"wallet_prompt_count\":0,\"offdomain_form_actions\":0,\"suspicious_script_refs_count\":0,\"external_script_hosts\":[],\"executable_download_count\":0,\"archive_download_count\":0,\"apk_download_count\":0,\"phone_number_count\":11,\"depth\":1}]",
        "score_reasons_json": "[\"Category evidence stayed thin, so the output was softened to a broader classification.\",\"Trusted status now requires clean crawl access and stronger confidence, so this result was downgraded to caution.\"]",
        "route_domain": "felix.gripe",
        "display_domain": "felix.gripe"
    },
    "explainability": {
        "summary": "felix.gripe currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is strong enough for a relatively stable read. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "High confidence",
                "tone": "good",
                "detail": "100/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Solid confidence",
                "tone": "caution",
                "detail": "60/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "weighted_contributions": [
            {
                "label": "Quality system",
                "points": "+26.5",
                "tone": "good",
                "detail": "Technical quality, crawl depth, page structure, and implementation hygiene. Current subsystem score: 78/100."
            },
            {
                "label": "Reputation system",
                "points": "+14.6",
                "tone": "caution",
                "detail": "Authority, search visibility, reach, engagement, and registry stability. Current subsystem score: 43/100."
            },
            {
                "label": "Safety system",
                "points": "+32.0",
                "tone": "good",
                "detail": "Fraud, spam, and trust signals from infrastructure, crawl, and registry evidence. Current subsystem score: 100/100."
            },
            {
                "label": "Risk clamp",
                "points": "-9.0",
                "tone": "risk",
                "detail": "Safety thresholds capped the final score until the risk profile improves."
            }
        ],
        "evidence_cards": [
            {
                "label": "Authority and trust",
                "value": "42/100 · trust 55/100",
                "tone": "caution",
                "detail": "169 monthly visitors, 82 organic keywords, brand completeness 69/100, engagement 82/100."
            },
            {
                "label": "Backlink and search evidence",
                "value": "1 referring domains",
                "tone": "good",
                "detail": "1 backlinks across 1 referring domains. Diversity 92/100; spam penalty 3."
            },
            {
                "label": "Registry and domain stability",
                "value": "2.2 years old",
                "tone": "good",
                "detail": "Stability 100/100 · age 2.2 years · registrar Porkbun LLC · expires in 304 days."
            },
            {
                "label": "Safety and fraud posture",
                "value": "Safety 100/100 · fraud 1/100",
                "tone": "good",
                "detail": "Primary tag T · safety 100/100 · fraud 1/100."
            }
        ],
        "positives": [
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "HTTPS is working, so the site clears a basic transport-security check.",
            "Backlink diversity looks broad enough to strengthen authority confidence."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-03-31 06:01:58",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 17d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-03-19 21:45:08",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 28d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-17 18:20:24",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-17 18:20:24",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "section_notes": {
            "audience": "Audience geography is estimated from category, country, traffic mix, and brand signals until first-party audience data is collected.",
            "keywords": "Top keywords are estimated from crawl language, brand, category, and visibility signals until tracked keyword snapshots are stored.",
            "history": "Rank history is estimated from the current profile because no stored history exists for this domain yet."
        },
        "base_weighted_score": 73,
        "fraud_clamp_penalty": 9,
        "final_score": 64
    },
    "insight_snapshot": {
        "version": 1,
        "generated_at": "2026-04-17T18:20:24+00:00",
        "domain": "felix.gripe",
        "display_name": "hello.",
        "is_tracked": false,
        "is_estimated": true,
        "overall_score": 64,
        "authority_score": 42,
        "trust_score": 55,
        "safety_score": 100,
        "fraud_score": 1,
        "confidence_score": 100,
        "traffic_confidence": 60,
        "last_crawled_at": "2026-03-31 06:01:58",
        "crawl_blocked": false,
        "summary": "felix.gripe currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is strong enough for a relatively stable read. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "High confidence",
                "tone": "good",
                "detail": "100/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Solid confidence",
                "tone": "caution",
                "detail": "60/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "top_positive_signals": [
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Registry history looks stable, which supports legitimacy and trust.",
            "HTTPS is working, so the site clears a basic transport-security check.",
            "Backlink diversity looks broad enough to strengthen authority confidence."
        ],
        "top_risk_signals": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-03-31 06:01:58",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 17d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-03-19 21:45:08",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 28d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-17 18:20:24",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-17 18:20:24",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "top_tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown"
            }
        ]
    },
    "is_tracked": false,
    "is_estimated": true,
    "live_state": {
        "status": "processing",
        "status_label": "Cache build running",
        "message": "The refreshed page cache is still being built for this domain.",
        "updated_at": "2026-04-18T00:19:13+00:00"
    },
    "refresh_state": {
        "canRequest": false,
        "queued": true,
        "processing": true,
        "stageKey": "cache-queued",
        "stageLabel": "Cache build running",
        "cooldownUntil": null,
        "message": "The refreshed page cache is still being built for this domain.",
        "action": "/domain/felix.gripe/refresh",
        "isGuestCooldown": false,
        "cooldownSeconds": 0
    },
    "urlscan_report": {
        "domain": "felix.gripe",
        "status": "error",
        "submitted_at": "2026-03-19T21:45:08+00:00",
        "completed_at": null,
        "last_checked_at": "2026-03-19T21:45:08+00:00",
        "last_error": "Rate limit for 'public' exceeded. Limit is 5000 per day. Reset in 8091 seconds.",
        "submitted_url": "https://felix.gripe/",
        "uuid": "",
        "result_url": "",
        "api_result_url": "",
        "visibility": "public",
        "summary": "urlscan.io scan submission failed.",
        "report": [],
        "report_summary": [],
        "is_fresh": false,
        "can_retry": true,
        "poll_after_seconds": 20
    }
}