{
  "schema_version": "agent-observatory-public-visitor-stats.v1",
  "generated_at": "2026-05-28T15:28:18Z",
  "window": "last_7_days",
  "source": "Caddy access-log aggregate generated by scripts/analyze_visitors.py",
  "request_count": 4668,
  "session_count": 876,
  "unique_ip_count": 489,
  "human_visitor_sessions": 30,
  "ai_visitor_sessions": 59,
  "autonomous_agent_candidate_sessions": 12,
  "agent_lab_visitor_sessions": 48,
  "taar_artifact_reader_sessions": 55,
  "passive_machine_reader_candidate_sessions": 22,
  "voluntary_beacon_participant_sessions": 2,
  "top_machine_routes": [
    {
      "path": "/robots.txt",
      "requests": 91
    },
    {
      "path": "/llms.txt",
      "requests": 17
    },
    {
      "path": "/products/trading-agent-assessment-record/latest_daily_run.json",
      "requests": 17
    },
    {
      "path": "/agent.json",
      "requests": 16
    },
    {
      "path": "/agent-lab/start.json",
      "requests": 11
    },
    {
      "path": "/.well-known/agent-permissions.json",
      "requests": 11
    },
    {
      "path": "/products/trading-agent-assessment-record/agent_manifest.json",
      "requests": 10
    },
    {
      "path": "/agent-lab/atlas.ndjson",
      "requests": 10
    }
  ],
  "notices": [
    "Counts are heuristic, not identity proof.",
    "User-Agent strings can be spoofed or omitted.",
    "Autonomous-agent candidates are sessions that reached active challenge or beacon routes.",
    "Raw IP addresses and raw session records are intentionally not published."
  ]
}
