pounce/ZONE_FILE_ACCESS.md
yves.gugger 6a6e2460d5 feat: Unified Market Feed API + Pounce Direct Integration
🚀 MARKET CONCEPT IMPLEMENTATION

Backend:
- Added /auctions/feed unified endpoint combining Pounce Direct + external auctions
- Implemented Pounce Score v2.0 with market signals (length, TLD, bids, age)
- Added vanity filter for premium domains (non-auth users)
- Integrated DomainListing model for Pounce Direct

Frontend:
- Refactored terminal/market page with Pounce Direct hierarchy
- Updated public auctions page with Pounce Exclusive section
- Added api.getMarketFeed() to API client
- Converted /market to redirect to /auctions

Documentation:
- Created MARKET_CONCEPT.md with full unicorn roadmap
- Created ZONE_FILE_ACCESS.md with Verisign access guide
- Updated todos and progress tracking

Cleanup:
- Deleted empty legacy folders (dashboard, portfolio, settings, watchlist, careers)
2025-12-11 08:59:50 +01:00

11 KiB

🌐 Zone File Access — Anleitung zur Datenhoheit


Was sind Zone Files?

Zone Files sind die Master-Listen aller registrierten Domains pro TLD (Top-Level-Domain). Sie werden täglich von den Registries aktualisiert und enthalten:

  • Alle aktiven Domains einer TLD
  • Nameserver-Informationen
  • Keine WHOIS-Daten (nur Domain + NS)

Beispiel .com Zone File (vereinfacht):

example.com.  86400  IN  NS  ns1.example.com.
example.com.  86400  IN  NS  ns2.example.com.
google.com.   86400  IN  NS  ns1.google.com.
...

Warum Zone Files = Unicorn?

Vorteil Beschreibung
Drop Prediction Domains die aus der Zone verschwinden = droppen in 1-5 Tagen
Exklusive Intel Diese Domains sind NOCH NICHT in Auktionen
Früher als Konkurrenz Backorder setzen bevor andere es wissen
Trend-Analyse Welche Keywords werden gerade registriert?
Daten-Monopol Gefilterte, cleane Daten vs. Spam-Flut von ExpiredDomains

Registries und Zugang

Tier 1: Critical TLDs (Sofort beantragen)

Registry TLDs Domains Link
Verisign .com, .net ~160M + 13M Zone File Access
PIR .org ~10M Zone File Access Program
Afilias .info ~4M Contact: registry@afilias.info

Tier 2: Premium TLDs (Phase 2)

Registry TLDs Fokus
CentralNIC .io, .co Startups
Google .app, .dev Tech
Donuts .xyz, .online, etc. Volumen
SWITCH .ch Schweizer Markt

Bewerbungsprozess: Verisign (.com/.net)

1. Voraussetzungen

  • Gültige Firma/Organisation
  • Technische Infrastruktur für große Datenmengen (~500GB/Tag)
  • Akzeptanz der Nutzungsbedingungen (keine Resale der Rohdaten)

2. Online-Bewerbung

  1. Gehe zu: https://www.verisign.com/en_US/channel-resources/domain-registry-products/zone-file/index.xhtml
  2. Klicke auf "Request Zone File Access"
  3. Fülle das Formular aus:
    • Organization Name: GenTwo AG
    • Purpose: Domain research and analytics platform
    • Contact: (technischer Ansprechpartner)

3. Wartezeit

  • Review: 1-4 Wochen
  • Genehmigung: Per E-Mail mit FTP/HTTPS Zugangsdaten

4. Kosten

  • Verisign: Kostenlos für nicht-kommerzielle/Forschungszwecke
  • Kommerzielle Nutzung: $10,000/Jahr (verhandelbar)

Technische Integration

Server-Anforderungen

# Minimale Infrastruktur
CPU: 16+ Cores (parallele Verarbeitung)
RAM: 64GB+ (effizientes Set-Diffing)
Storage: 2TB SSD (Zone Files + History)
Network: 1Gbps (schneller Download)

# Geschätzte Kosten
Provider: Hetzner/OVH Dedicated
Preis: ~$300-500/Monat

Processing Pipeline

04:00 UTC  │ Zone File Download (FTP/HTTPS)
           │ └─→ ~500GB komprimiert für .com/.net
           │
04:30 UTC  │ Decompression & Parsing
           │ └─→ Extrahiere Domain-Namen
           │
05:00 UTC  │ Diff Analysis
           │ └─→ Vergleiche mit gestern
           │ └─→ NEU: Neue Registrierungen
           │ └─→ WEG: Potentielle Drops
           │
05:30 UTC  │ Quality Scoring (Pounce Algorithm)
           │ └─→ Filtere Spam raus (99%+)
           │ └─→ Nur Premium-Domains durchlassen
           │
06:00 UTC  │ Database Update
           │ └─→ PostgreSQL: pounce_zone_drops
           │
06:15 UTC  │ Alert Matching
           │ └─→ Sniper Alerts triggern
           │
06:30 UTC  │ User Notifications
           │ └─→ E-Mail/SMS für Tycoon-User

Datenbank-Schema (geplant)

-- Zone File Drops
CREATE TABLE pounce_zone_drops (
    id SERIAL PRIMARY KEY,
    domain VARCHAR(255) NOT NULL,
    tld VARCHAR(20) NOT NULL,
    
    -- Analyse
    pounce_score INT NOT NULL,
    estimated_value DECIMAL(10,2),
    
    -- Status
    detected_at TIMESTAMP DEFAULT NOW(),
    estimated_drop_date TIMESTAMP,
    status VARCHAR(20) DEFAULT 'pending', -- pending, dropped, backordered, registered
    
    -- Tracking
    notified_users INT DEFAULT 0,
    backorder_count INT DEFAULT 0,
    
    UNIQUE(domain)
);

-- Index für schnelle Suche
CREATE INDEX idx_zone_drops_score ON pounce_zone_drops(pounce_score DESC);
CREATE INDEX idx_zone_drops_date ON pounce_zone_drops(estimated_drop_date);

Der Pounce Algorithm — Zone File Edition

# backend/app/services/zone_analyzer.py (ZU BAUEN)

class ZoneFileAnalyzer:
    """
    Analysiert Zone Files und findet Premium-Opportunities.
    
    Input: Raw Zone File (Millionen von Domains)
    Output: Gefilterte Premium-Liste (Hunderte)
    """
    
    async def analyze_drops(self, yesterday: set, today: set) -> list:
        """
        Findet Domains die aus der Zone verschwunden sind.
        Diese Domains droppen in 1-5 Tagen (Redemption Period).
        """
        dropped = yesterday - today  # Set-Differenz
        
        premium_drops = []
        for domain in dropped:
            score = self.calculate_pounce_score(domain)
            
            # Nur Premium durchlassen (>70 Score)
            if score >= 70:
                premium_drops.append({
                    "domain": domain,
                    "score": score,
                    "drop_date": self.estimate_drop_date(domain),
                    "estimated_value": self.estimate_value(domain),
                })
        
        return sorted(premium_drops, key=lambda x: x['score'], reverse=True)
    
    def calculate_pounce_score(self, domain: str) -> int:
        """
        Der Pounce Algorithm — Qualitätsfilter für Domains.
        
        Faktoren:
        - Länge (kurz = wertvoll)
        - TLD (com > io > xyz)
        - Keine Zahlen/Bindestriche
        - Dictionary Word Bonus
        """
        name = domain.rsplit('.', 1)[0]
        tld = domain.rsplit('.', 1)[1]
        score = 50  # Baseline
        
        # Längen-Score (exponentiell für kurze Domains)
        length_scores = {1: 50, 2: 45, 3: 40, 4: 30, 5: 20, 6: 15, 7: 10}
        score += length_scores.get(len(name), max(0, 15 - len(name)))
        
        # TLD Premium
        tld_scores = {'com': 20, 'ai': 25, 'io': 18, 'co': 12, 'ch': 15, 'de': 10}
        score += tld_scores.get(tld, 0)
        
        # Penalties
        if '-' in name: score -= 30
        if any(c.isdigit() for c in name): score -= 20
        if len(name) > 12: score -= 15
        
        return max(0, min(100, score))

Feature: "Drops Tomorrow" (Tycoon Exclusive)

┌─────────────────────────────────────────────────────────────────┐
│ 🔮 DROPS TOMORROW — Tycoon Exclusive ($29/mo)                    │
├─────────────────────────────────────────────────────────────────┤
│                                                                  │
│  Diese Domains sind NICHT in Auktionen!                         │
│  Du kannst sie beim Registrar direkt registrieren.              │
│                                                                  │
│  ─────────────────────────────────────────────────────────────  │
│                                                                  │
│  Domain           TLD    Score   Est. Value   Drops In          │
│  ─────────────────────────────────────────────────────────────  │
│  pixel.com        .com   95      $50,000      23h 45m           │
│  swift.io         .io    88      $8,000       23h 12m           │
│  quantum.ai       .ai    92      $25,000      22h 58m           │
│  nexus.dev        .dev   84      $4,500       22h 30m           │
│  fusion.co        .co    81      $3,200       21h 15m           │
│                                                                  │
│  ─────────────────────────────────────────────────────────────  │
│                                                                  │
│  💡 Pro Tip: Setze bei deinem Registrar einen Backorder         │
│              für diese Domains. Wer zuerst kommt...             │
│                                                                  │
│  [🔔 Alert für "pixel.com" setzen]                              │
│                                                                  │
└─────────────────────────────────────────────────────────────────┘

Roadmap

Phase 1: Jetzt (Bewerbung)

  • Verisign Zone File Access beantragen
  • PIR (.org) Zone File Access beantragen
  • Server-Infrastruktur planen

Phase 2: 3-6 Monate (Integration)

  • Download-Pipeline bauen
  • Diff-Analyse implementieren
  • Pounce Algorithm testen
  • "Drops Tomorrow" Feature für Tycoon

Phase 3: 6-12 Monate (Skalierung)

  • Weitere TLDs (.io, .co, .ch, .de)
  • Historische Trend-Analyse
  • Keyword-Tracking
  • Enterprise Features

Risiken und Mitigierung

Risiko Wahrscheinlichkeit Mitigierung
Ablehnung durch Registry Mittel Klare Business-Case, ggf. Partnerschaften
Hohe Serverkosten Niedrig Cloud-Skalierung, nur Premium-TLDs
Konkurrenz kopiert Mittel First-Mover-Vorteil, besserer Algorithmus
Datenqualität Niedrig Mehrere Quellen, Validierung

Nächster Schritt

Aktion für diese Woche:

  1. Verisign bewerben: https://www.verisign.com/en_US/channel-resources/domain-registry-products/zone-file/index.xhtml
  2. E-Mail an PIR: zone-file-access@pir.org
  3. Server bei Hetzner reservieren: AX101 Dedicated (~€60/Monat)

Zusammenfassung

Zone Files sind der Schlüssel zur Datenhoheit. Während die Konkurrenz auf Scraping setzt, werden wir die Rohdaten direkt von der Quelle haben — und mit dem Pounce Algorithm filtern, sodass nur Premium-Opportunities zu unseren Usern gelangen.

Das ist der Unicorn-Treiber. 🦄