{
  "generated_at": "2026-06-11T12:08:54.890299+00:00",
  "reviewer": "delegated QA/critique agent",
  "verdict": "Smoke-test is useful, but conclusions are too strong for production benchmark.",
  "key_points": [
    "Only one prompt per model; no repeated trials or P50/P95 latency/cost.",
    "Only one target app/domain, so results are overfitted to Hermes Agent.",
    "The hermes-agent.org result should be labelled non-canonical relative to app_directory, not necessarily wrong, until ownership/redirect is verified.",
    "Need ground-truth table and scoring rubric before workflow 3B/3C production use."
  ],
  "priority_optimizations": [
    "P0: Define 10-app ground truth table before next benchmark.",
    "P0: Run 3 repeats per method and report P50/P95.",
    "P0: Add URL verification: HTTP status, redirect chain, canonical match, domain authority.",
    "P1: Test Perplexity Sonar, gpt-4o-search-preview, and relace/relace-search.",
    "P1: Add Danish prompts and scoring rubric 0-5.",
    "P2: Use cache, fallback chain, circuit breaker, and one-shot lock by app_ref_id."
  ],
  "full_markdown": "# Uafhængig kritik: LLM Web-Search Test & Testresultater\n\n## Metodologi-kritik\n\n### Stikprøvestørrelse — kritisk svaghed\n- Kun 1 prompt pr. model. Ingen gentagelser, ingen varians-beregning. Latency og cost kan svinge 2-5x afhængigt af load, cache og web-resultater.\n- Kun 1 emne-domæne: Hermes Agent. Resultaterne er overfitted til ét specifikt opslag med relativt lille web-tilstedeværelse.\n- Ingen variation i prompt-type: kun faktuelle “find X”-spørgsmål. Mangler sammenligninger, danske queries, tvetydige emner, misinformation og multi-hop reasoning.\n\n### Ground truth problem\n- Testen markerede `hermes-agent.org` som forkert/alternativ URL, men det er ikke tilstrækkeligt verificeret.\n- Kritiker-agenten fandt, at både `hermes-agent.org` og `hermes-agent.nousresearch.com` er aktive Hermes Agent-sider med Nous Research-kontekst.\n- Derfor bør vi ikke kalde `hermes-agent.org` “forkert” uden redirect-/ejer-verifikation. Det mere præcise er: “ikke den URL vi har som canonical Visit-url i app_directory.”\n\n### Fairness\n- OpenRouter og NanoGPT fik næsten samme, men ikke identiske, engelske prompts.\n- Fusion, exa-answer og NanoGPT `/api/web` er forskellige produkttyper og bør ikke rangeres på én simpel skala.\n- Cost bør sammenlignes som cost-per-kvalitet, ikke kun rå pris.\n\n### Cost og latency\n- OpenRouter cost kom fra API-data; NanoGPT cost bør dokumenteres tydeligere.\n- Latency er single-shot klientmåling; der mangler P50/P95.\n\n### Kvalitetsvurdering\n- “Høj kvalitet” var subjektivt og manglede rubric.\n- Der bør scores på URL-korrekthed, kildeautoritet, dansk sprog, svarstruktur, dybde og hallucination.\n\n## Hvilke konklusioner holder?\n\n### Holder\n- Fusion er dyrt/langsomt i testen.\n- fastgpt fejlede med 502.\n- `structured` på NanoGPT `/api/web` var ustabilt i smoke-testen.\n- Brave/Exa `/api/web` understøtter kun `searchResults`.\n- `answer` er ugyldigt outputType; korrekt er `sourcedAnswer`.\n- One-shot politik for danske beskrivelser er fornuftig.\n\n### Delvist\n- `gpt-4o-mini-search-preview` skal valideres mod canonical URL, men “forkert URL” er for hård formulering.\n- `exa-answer` ser billig og lovende ud, men er kun testet på én prompt.\n- `linkup sourcedAnswer` ser lovende ud, men kræver flere tests.\n\n### Ikke stærkt nok bevist\n- Endelig anbefalet rangorden mellem modeller.\n- “Undgå linkup-research-low” som generel regel.\n- Hybrid-strategien som empirisk bevist.\n\n## Manglende tests før workflow 3B/3C\n\n1. 5-10 reference-prompts på forskellige app-typer.\n2. 3 gentagelser pr. model for P50/P95 latency og cost-varians.\n3. Ground-truth tabel med verificerede canonical URLs før testen.\n4. Automatisk URL-verifikation: HTTP status, redirect chain, canonical match, domæne-ejer/brand-match.\n5. Danske prompts.\n6. Tvetydige emner.\n7. Error-handling og fallback-test.\n8. Concurrent/batch-test.\n9. Cache-test.\n10. Test af Perplexity Sonar og `gpt-4o-search-preview`.\n\n## Prioriterede optimeringsforslag\n\n### P0 — før produktion\n1. Definér ground-truth tabel med 10 apps og verificerede canonical URLs.\n2. Kør 3 gentagelser pr. metode og rapportér P50/P95.\n3. Ret quality note: `hermes-agent.org` bør kaldes “ikke canonical i app_directory”, ikke nødvendigvis forkert, indtil det er verificeret.\n\n### P1 — bedre beslutningsgrundlag\n4. Test `perplexity/sonar-pro-search`, `perplexity/sonar-pro`, `gpt-4o-search-preview` og evt. `relace/relace-search`.\n5. Tilføj danske test-prompts.\n6. Indfør scoring-rubric 0-5 for URL, kilde, dansk, struktur, dybde, hallucination.\n7. Rapporter cost-per-quality-score.\n\n### P2 — workflow-optimering\n8. Implementér cache og one-shot lock pr. `app_ref_id`.\n9. Fallback-kæde: billig søgning først, dyr model kun ved lav score.\n10. Circuit breaker ved 502/504/timeouts.\n\n### P3 — dokumentation\n11. Dokumentér NanoGPT cost-kilde.\n12. Fjern kategoriske “undgå”-labels baseret på ét failed test; brug “fejlede i smoke-test”.\n\n## Samlet vurdering\n\nTesten er et fornuftigt første udkast, og guiderne er brugbare. Men konklusionerne var for stærke ift. datagrundlaget. Den bør behandles som smoke-test, ikke produktionsbenchmark. P0-forbedringerne bør laves før workflow 3B/3C køres bredt.\n"
}