{
  "run_id": "wolph--django-redis-admin-claude-haiku-5-5-1793159140128637563",
  "date": "2026-10-28T03:50:00.194710+00:00",
  "repo": "wolph/django-redis-admin",
  "kind": "repo",
  "source": "https://github.com/wolph/django-redis-admin",
  "commit": "0d12d63ff3e653e97146bfd4e046551b9e874aa9",
  "model": "claude-haiku-5-5",
  "model_version": "claude-haiku-5-5",
  "test_version": "readme-c03644542c69939a9374958136a8b3431f7456269d3fb4b3c433785f59cfd637",
  "pass": true,
  "outcome": "pass",
  "time_to_working_s": 230.33210754000174,
  "total_s": 260.0659580230713,
  "steps": [
    "cd <guest-path> && pwd && ls -la && git status 2>&1 | head -3; id -u; python3 --version; cat README* 2>/dev/null | head -150",
    "cd <guest-path> && sed -n 150,260p README.md; ls scripts test_redis_admin tests .coldpass; cat tox.ini | head -60",
    "which uv redis-server redis-cli sudo; sudo -n true && echo SUDO_OK; cat /etc/os-release | head -2; echo $CDP_URL; cat <guest-path> 2>/dev/null | head -5; ls <guest-path>",
    "sudo apt-get -o DPkg::Lock::Timeout=300 update -qq && sudo apt-get -o DPkg::Lock::Timeout=300 install -y -qq redis-server redis-tools >/tmp/apt.log 2>&1; echo rc=$?; tail -3 /tmp/apt.log; which redis-server redis-cli",
    "(redis-server --port 6379 --daemonize yes --save \"\" >/tmp/redis-start.log 2>&1); sleep 1; redis-cli -h 127.0.0.1 -p 6379 ping; cd <guest-path> && uv --version && uv sync 2>&1 | tail -5; echo rc=$?",
    "cd <guest-path> && cat test_redis_admin/demo.py | head -80; grep -n \"8080\\|runserver\\|seed\" test_redis_admin/demo.py | head",
    "cd <guest-path> && nohup uv run python -m test_redis_admin.demo > /tmp/demo.log 2>&1 &\nsleep 15; tail -15 /tmp/demo.log; curl -s -o /dev/null -w \"%{http_code}\\n\" http://127.0.0.1:8080/admin/login/",
    "cat /tmp/demo.log | tail -20; cd /tmp && rm -f /tmp/cj.txt && curl -s -c /tmp/cj.txt -b /tmp/cj.txt http://127.0.0.1:8080/admin/login/ -o /tmp/login.html && TOKEN=<secret> -o 'name=\"csrfmiddlewaretoken\" value=\"[^\"]*\"' /tmp/login.html | sed 's/.*value=\"//;s/\"//') && curl -s -c /tmp/cj.txt -b /tmp/cj.txt -e http://127.0.0.1:8080/admin/login/ -d \"csrfmiddlewaretoken=$TOKEN&username=admin&password=<secret>&next=/admin/\" -o /dev/null -w \"login %{http_code}\\n\" http://127.0.0.1:8080/admin/login/ && curl -s -b /tmp/cj.txt http://127.0.0.1:8080/admin/ | grep -io 'redis[^<]*' | head; curl -s -b /tmp/cj.txt \"http://127.0.0.1:8080/admin/redis_admin/\" | head -c 300",
    "curl -s -b /tmp/cj.txt \"http://127.0.0.1:8080/admin/redis_admin/default/?q=user\" | grep -o 'user:[0-9a-z]*' | sort -u; curl -s -b /tmp/cj.txt \"http://127.0.0.1:8080/admin/redis_admin/default/\" | grep -o 'greeting[^<]*' | head -3; curl -s -b /tmp/cj.txt \"http://127.0.0.1:8080/admin/redis_admin/default/user:1/change/\" -o /dev/null -w \"%{http_code}\\n\"",
    "curl -s -b /tmp/cj.txt \"http://127.0.0.1:8080/admin/redis_admin/default/json:settings/change/\" | grep -io 'retries[^<]\\{0,40\\}' | head -3; curl -s -b /tmp/cj.txt \"http://127.0.0.1:8080/admin/redis_admin/default/\" | grep -c 'constance'; pkill -f \"test_redis_admin.demo\"; sleep 2; curl -s -o /dev/null -w \"after-stop %{http_code}\\n\" http://127.0.0.1:8080/admin/login/ || true",
    "curl -s -b /tmp/cj.txt \"http://127.0.0.1:8080/admin/redis_admin/default/json:settings/change/\" | grep -io 'retries[^<]\\{0,40\\}' | head -3; echo ---; curl -s -o /dev/null -w \"%{http_code}\\n\" http://127.0.0.1:8080/admin/login/",
    "cd <guest-path> && timeout 120 uv run python -m test_redis_admin.demo --seed-only; echo rc=$?",
    "cd <guest-path> && timeout 900 uv run pytest -q 2>&1 | tail -25; echo rc=${PIPESTATUS[0]}",
    "cd <guest-path> && grep -rniE \"cron|schedul|--once|--now|webhook|while True|interval\" --include=*.py --include=*.md redis_admin test_redis_admin README.md docs 2>/dev/null | head; echo ---; grep -c \"seed-only\" README.md",
    "cd <guest-path> && mkdir -p .coldpass && cat > .coldpass/probe.json <<'EOF'\n{\"kind\":\"cli\",\"argv\":[\"uv\",\"run\",\"python\",\"-m\",\"test_redis_admin.demo\",\"--seed-only\"],\"cwd\":\"<guest-path>\",\"expected_text\":\"Seeded 11 keys on server 'default'\"}\nEOF\ncat > .coldpass/claims.json <<'EOF'\n[{\"kind\":\"claim\",\"claim\":\"The demo seeds a local Redis with sample keys of every type\",\"source\":\"The repository ships a demo project that seeds a local Redis with one key of\",\"input\":\"--seed-only\",\"expected\":\"Seeded 11 keys on server 'default'\",\"probe_kind\":\"cli\",\"argv\":[\"uv\",\"run\",\"python\",\"-m\",\"test_redis_admin.demo\",\"--seed-only\"],\"expected_text\":\"Seeded 11 keys on server 'default'\",\"cwd\":\"<guest-path>\"},\n{\"kind\":\"claim\",\"claim\":\"The test suite runs with a 100% coverage gate\",\"source\":\"# tests with the 100% coverage gate\",\"input\":\"pytest -q\",\"expected\":\"68 passed\",\"probe_kind\":\"cli\",\"argv\":[\"uv\",\"run\",\"pytest\",\"-q\"],\"expected_text\":\"68 passed\",\"cwd\":\"<guest-path>\"}]\nEOF\ncat > .coldpass/examples.json <<'EOF'\n[{\"kind\":\"example\",\"claim\":\"Seed sample keys into the local Redis servers using the documented demo command\",\"source\":\"README.md Try the demo\",\"input\":\"--seed-only\",\"expected\":\"Seeded 11 keys on server 'default' and 3 on 'sessions'\",\"argv\":[\"uv\",\"run\",\"python\",\"-m\",\"test_redis_admin.demo\",\"--seed-only\"],\"cwd\":\"<guest-path>\",\"expected_text\":\"Seeded 3 keys on server 'sessions'\"},\n{\"kind\":\"example\",\"claim\":\"Run the documented test suite\",\"source\":\"README.md Development\",\"input\":\"pytest -q\",\"expected\":\"68 passed\",\"argv\":[\"uv\",\"run\",\"pytest\",\"-q\"],\"cwd\":\"<guest-path>\",\"expected_text\":\"68 passed\"}]\nEOF\ncat > .coldpass/cycles.json <<'EOF'\n{\"detected\":false,\"reason\":\"Inspected README.md and redis_admin/, test_redis_admin/ for cron, schedule, loop, webhook, --once or --now; none found. The demo runs once (seed then Django dev server) and the --seed-only flag is a one-shot seed, not a product cycle.\",\"checks\":[]}\nEOF\npython3 -I -c \"import json,sys;[json.load(open('.coldpass/'+f)) for f in ['probe.json','claims.json','examples.json','cycles.json']];print('json ok')\"",
    "cd <guest-path> && cat > .coldpass/report.json <<'EOF'\n{\"outcome\":\"working\",\"fault_owner\":null,\"operation\":\"Run the README demo: seed a local Redis with sample keys and serve the django-redis-admin demo in the Django admin; also run the documented test suite\",\"operation_scope\":\"Ubuntu 24.04 guest, Python 3.12.3, uv 0.13.5, Redis server on 127.0.0.1:6379 installed via apt; no browser used\",\"steps\":[\"sudo apt-get install redis-server redis-tools\",\"uv sync\",\"uv run python -m test_redis_admin.demo (admin served on 127.0.0.1:8080; login admin/admin verified with curl: /admin/ lists Redis Defaults and Sessions, search for user returns user:1)\",\"uv run python -m test_redis_admin.demo --seed-only (Seeded 11 keys on 'default', 3 on 'sessions')\",\"uv run pytest (68 passed, 100% coverage)\"],\"deviations\":[\"Redis was not preinstalled; installed from Ubuntu apt with sudo apt-get -o DPkg::Lock::Timeout=300.\",\"Demo server was verified with curl rather than a browser; no browser was used.\",\"Probe is the documented --seed-only command (cli), since the dev server needs a login session that the http probe kind cannot carry. The demo server was stopped before replay so the checker can start it.\",\"No product cycle or scheduler exists, so cycles.json has detected=false.\"],\"stuck_step\":null,\"main_blocker\":null,\"plain_failure\":null,\"suggested_fix\":\"None needed.\"}\nEOF\npgrep -f \"test_redis_admin.demo\" >/dev/null && echo \"demo still running\" || echo \"no demo running\"; <env-var>=<guest-path> python3 -I <guest-path> --validate --replay 2>&1 | tail -40; echo rc=$?",
    "cd <guest-path> && for p in $(pgrep -f \"[t]est_redis_admin.demo\" ); do kill $p; done; sleep 3; pgrep -f \"[t]est_redis_admin.demo\" || echo \"demo stopped\"; curl -s -o /dev/null -w \"port8080=%{http_code}\\n\" http://127.0.0.1:8080/admin/login/; cat > .coldpass/claims.json <<'EOF'\n[{\"kind\":\"claim\",\"claim\":\"The demo seeds a local Redis with sample keys of every type\",\"source\":\"The repository ships a demo project that seeds a local Redis with one key of\",\"input\":\"--seed-only\",\"expected\":\"Seeded 11 keys on server 'default'\",\"probe_kind\":\"cli\",\"argv\":[\"uv\",\"run\",\"python\",\"-m\",\"test_redis_admin.demo\",\"--seed-only\"],\"expected_text\":\"Seeded 11 keys on server 'default'\",\"cwd\":\"<guest-path>\"}]\nEOF\n<env-var>=<guest-path> python3 -I <guest-path> --validate --replay 2>&1 | head -c 1500; echo; echo rc=$?",
    "cd <guest-path> && ss -ltnp 'sport = :8080' 2>/dev/null | tail -n +2; for p in $(ss -ltnpH 'sport = :8080' 2>/dev/null | grep -o 'pid=[0-9]*' | cut -d= -f2 | sort -u); do kill $p; done; sleep 3; curl -s -o /dev/null -w \"port8080=%{http_code}\\n\" http://127.0.0.1:8080/admin/login/ || true",
    "cd <guest-path> && cat > .coldpass/claims.json <<'EOF'\n[{\"kind\":\"claim\",\"claim\":\"The demo seeds a local Redis with sample keys of every type\",\"source\":\"The repository ships a demo project that seeds a local Redis with one key of\",\"input\":\"--seed-only\",\"expected\":\"Seeded 11 keys on server 'default'\",\"probe_kind\":\"cli\",\"argv\":[\"uv\",\"run\",\"python\",\"-m\",\"test_redis_admin.demo\",\"--seed-only\"],\"expected_text\":\"Seeded 11 keys on server 'default'\",\"cwd\":\"<guest-path>\"}]\nEOF\n<env-var>=<guest-path> python3 -I <guest-path> --validate --replay > /tmp/validate.out 2>&1; echo rc=$?; head -c 1200 /tmp/validate.out"
  ],
  "stuck_step": null,
  "error_excerpt": null,
  "what_it_did": "Run the README demo: seed a local Redis with sample keys and serve the django-redis-admin demo in the Django admin; also run the documented test suite",
  "suggested_fix": null,
  "tokens_in": 377366,
  "tokens_out": 11108,
  "cost_usd": 0.014536120000000003,
  "usage_complete": true,
  "checks": [
    {
      "check": "operation",
      "status": "PASS",
      "details": {
        "working": true,
        "argv": [
          "uv",
          "run",
          "python",
          "-m",
          "test_redis_admin.demo",
          "--seed-only"
        ],
        "kind": "cli",
        "returncode": 0,
        "stdout": "Seeded 11 keys on server 'default'\nSeeded 3 keys on server 'sessions'",
        "stderr": "",
        "needs_credentials": false,
        "needs_browser": false,
        "scope": "product operation"
      }
    }
  ],
  "safety": {
    "version": "z2x-1",
    "rules_version": "z2x-1",
    "summary": "No problems traced to this repository code in these checks.",
    "findings": [],
    "context": [],
    "limitations": [
      "A short run cannot establish that code is safe.",
      "Connections show IP addresses; proxies can hide the final hostname.",
      "Tracing covers dispatched commands and their children, not the whole OS; guest root can interfere with tracing."
    ],
    "static": {
      "dependency_note": "OSV scanned supported lockfiles; unpinned dependencies and unsupported formats are outside this check."
    },
    "evidence_url": "/safety/?run=wolph--django-redis-admin-claude-haiku-5-5-1793159140128637563",
    "evidence_file": "/data/safety/wolph--django-redis-admin-claude-haiku-5-5-1793159140128637563.json.gz"
  },
  "agent_execution": "native_agent",
  "agent_runtime": "claude-code",
  "agent_runtime_version": "2.1.310 (Claude Code)",
  "tool_transport": "mcp-assigned-vm",
  "platform": "linux",
  "reasoning": "low",
  "service_tier": null,
  "resources": {
    "cpus": 2,
    "memory_mib": 4096,
    "disk_mib": 32768
  },
  "native_tool_calls": 19,
  "native_bundle": null,
  "architecture": null,
  "backend": "hyperv",
  "platform_details": {
    "backend": "hyperv",
    "os": "linux"
  },
  "platform_conflicts": null,
  "sandbox_source": null,
  "source_pin": {
    "commit": "0d12d63ff3e653e97146bfd4e046551b9e874aa9",
    "url": "https://github.com/wolph/django-redis-admin"
  },
  "purpose": "initial",
  "profile": {
    "model": "claude-haiku-5-5",
    "reasoning": "low"
  },
  "fault": {
    "owner": null,
    "status": "resolved",
    "reason": null
  },
  "fix_id": null,
  "verifies_run_id": null,
  "hosting": null,
  "operation_scope": "product operation",
  "tool_calls": 19,
  "guest_setup": null,
  "runtime": null,
  "runtime_version": null,
  "runtime_revision": null,
  "source_revision": null,
  "evidence_version": null,
  "failure_origin": null,
  "evidence_strength": "readme_checked",
  "works": "yes",
  "install_s": null,
  "first_use_s": null,
  "mcp": "none",
  "needs": [],
  "needs_which": null,
  "agent_interface": [
    "cli"
  ],
  "license": "BSD-3-Clause",
  "repo_url": "https://github.com/wolph/django-redis-admin",
  "cost_to_try": "free",
  "hardware": null,
  "what_failed": null,
  "local_or_hosted": "local",
  "cycle_checks": [
    {
      "kind": "cycle",
      "claim": "Scheduled or looping main behavior",
      "source": "repository entry points",
      "input": "source inspection",
      "expected": "identify the product trigger",
      "verdict": "yes",
      "outcome": "Inspected README.md and redis_admin/, test_redis_admin/ for cron, schedule, loop, webhook, --once or --now; none found. The demo runs once (seed then Django dev server) and the --seed-only flag is a one-shot seed, not a product cycle.",
      "evidence": "Inspected README.md and redis_admin/, test_redis_admin/ for cron, schedule, loop, webhook, --once or --now; none found. The demo runs once (seed then Django dev server) and the --seed-only flag is a one-shot seed, not a product cycle.",
      "command": ""
    }
  ],
  "claims": [
    {
      "kind": "claim",
      "claim": "The demo seeds a local Redis with sample keys of every type",
      "source": "The repository ships a demo project that seeds a local Redis with one key of",
      "input": "--seed-only",
      "expected": "Seeded 11 keys on server 'default'",
      "command": "uv run python -m test_redis_admin.demo --seed-only",
      "verdict": "yes",
      "outcome": "Real input produced the expected result: Seeded 11 keys on server 'default'",
      "evidence": "Seeded 11 keys on server 'default'\nSeeded 3 keys on server 'sessions'\n",
      "returncode": 0,
      "source_checked": true,
      "source_file": "README.md"
    }
  ],
  "claims_note": null,
  "example_checks": [
    {
      "kind": "example",
      "claim": "Seed sample keys into the local Redis servers using the documented demo command",
      "source": "README.md Try the demo",
      "input": "--seed-only",
      "command": "uv run python -m test_redis_admin.demo --seed-only",
      "evidence": "Seeded 11 keys on server 'default'\nSeeded 3 keys on server 'sessions'",
      "deferred": false,
      "expected": "Seeded 11 keys on server 'default' and 3 on 'sessions'",
      "returncode": 0,
      "verdict": "yes",
      "outcome": "command completed successfully"
    },
    {
      "kind": "example",
      "claim": "Run the documented test suite",
      "source": "README.md Development",
      "input": "pytest -q",
      "command": "uv run pytest -q",
      "evidence": "  0      0   100%\nredis_admin/__init__.py        0      0      0      0   100%\nredis_admin/admin.py         226      0     70      0   100%\nredis_admin/apps.py            5      0      0      0   100%\nredis_admin/client.py         55      0     10      0   100%\nredis_admin/models.py        179      0     32      0   100%\nredis_admin/settings.py       40      0     14      0   100%\n----------------------------------------------------------------------\nTOTAL                        514      0    126      0   100%\nRequired test coverage of 100.0% reached. Total coverage: 100.00%\n68 passed in 6.11s",
      "deferred": false,
      "expected": "68 passed",
      "returncode": 0,
      "verdict": "yes",
      "outcome": "command completed successfully"
    }
  ],
  "does_what_it_says": "yes",
  "maintenance": {
    "last_commit_at": "2026-10-27T23:50:50Z",
    "commits_90d": 50,
    "merged_prs_90d": 5,
    "open_issues": 0,
    "open_prs": 1,
    "reply_share": 0.0,
    "reply_threads": 2,
    "median_reply_hours": null,
    "last_release_at": "2026-10-28T00:23:30Z",
    "archived": false,
    "verdict": "maintained",
    "note": "actively maintained: last commit 0 days ago; 50 commits and 5 merged PRs in 90 days; 0 open issues, 1 open PRs; 0 of 2 recent threads got a maintainer reply; latest release 2026-10-28"
  },
  "maintenance_verdict": "maintained",
  "maintenance_note": "actively maintained: last commit 0 days ago; 50 commits and 5 merged PRs in 90 days; 0 open issues, 1 open PRs; 0 of 2 recent threads got a maintainer reply; latest release 2026-10-28",
  "maintained": "active",
  "maintained_note": "last commit 0 days ago; 0 open issues, 1 answered or closed",
  "last_commit_at": "2026-10-28T00:25:07Z",
  "last_release_at": "2026-10-28T00:23:30Z",
  "open_issues": 0,
  "answered_issues": 1,
  "platforms_claimed": [
    "linux"
  ],
  "topic": "other",
  "agent_interfaces": [
    {
      "interface": "cli",
      "evidence": "independent checker",
      "observed": true,
      "operation_checked": true
    }
  ],
  "agent_interfaces_note": "README metadata is a discovery hint, not pinned documentation proof. Observed interfaces were exercised in this run. An empty list means unknown.",
  "mcp_context": null,
  "tested_at": "2026-10-28T03:50:00.194710+00:00",
  "tested_commit": "0d12d63ff3e653e97146bfd4e046551b9e874aa9",
  "tested_with": {
    "agent": "claude-code",
    "agent_version": "2.1.310 (Claude Code)",
    "model": "claude-haiku-5-5",
    "model_route": "claude-haiku-5-5",
    "reasoning": "low",
    "os": "linux",
    "backend": "hyperv",
    "transport": "mcp-assigned-vm"
  },
  "setup_identity": {
    "repo": "wolph/django-redis-admin",
    "source": "https://github.com/wolph/django-redis-admin",
    "commit": "0d12d63ff3e653e97146bfd4e046551b9e874aa9",
    "source_revision": null,
    "os": "linux",
    "architecture": null,
    "backend": "hyperv",
    "model": "claude-haiku-5-5",
    "model_version": "claude-haiku-5-5",
    "agent_execution": "native_agent",
    "agent_runtime": "claude-code",
    "agent_runtime_version": "2.1.310 (Claude Code)",
    "tool_transport": "mcp-assigned-vm",
    "runtime": null,
    "runtime_version": null,
    "runtime_revision": null,
    "sandbox_source": null,
    "guest_setup": null,
    "source_pin": {
      "commit": "0d12d63ff3e653e97146bfd4e046551b9e874aa9",
      "url": "https://github.com/wolph/django-redis-admin"
    },
    "platform_details": {
      "os": "linux",
      "backend": "hyperv"
    },
    "platform_conflicts": null,
    "reasoning": "low",
    "service_tier": null,
    "resources": {
      "cpus": 2,
      "memory_mib": 4096,
      "disk_mib": 32768
    },
    "operation": "Run the README demo: seed a local Redis with sample keys and serve the django-redis-admin demo in the Django admin; also run the documented test suite",
    "operation_scope": "product operation",
    "hosting": null,
    "kind": "repo",
    "test_version": "readme-c03644542c69939a9374958136a8b3431f7456269d3fb4b3c433785f59cfd637",
    "evidence_version": null
  },
  "other_model": null,
  "other_run_id": null,
  "models_agree": null,
  "furthest_model": null,
  "transcript_url": "/transcripts/wolph--django-redis-admin-claude-haiku-5-5-1793159140128637563.txt",
  "report_url": "/reports/wolph--django-redis-admin-claude-haiku-5-5-1793159140128637563.json"
}
