{
  "tokens_out": 4086,
  "outcome": "pass",
  "suggested_fix": null,
  "cycle_checks": null,
  "fault": {
    "owner": null,
    "status": "resolved",
    "reason": null,
    "evidence": []
  },
  "runtime_revision": null,
  "agent_execution": "native_agent",
  "time_to_working_s": null,
  "usage_complete": true,
  "runtime": null,
  "architecture": null,
  "local_or_hosted": null,
  "agent_interfaces_note": null,
  "platform_details": null,
  "platforms_claimed": null,
  "maintenance": null,
  "evidence_strength": null,
  "purpose": "initial",
  "topic": null,
  "needs_which": null,
  "tested_with": null,
  "native_bundle": null,
  "agent_runtime": "claude-code",
  "maintenance_note": null,
  "runtime_version": null,
  "does_what_it_says": null,
  "commit": "6aeab872db83357e8c60610a83ac7d8ac0794c45",
  "failure_origin": null,
  "stuck_step": null,
  "repo_url": null,
  "needs": null,
  "checks": [
    {
      "check": "operation",
      "status": "PASS",
      "details": {
        "working": true,
        "argv": [
          "openinvest",
          "mcp"
        ],
        "kind": "mcp",
        "serverInfo": {
          "name": "openinvest",
          "version": "1.30.0"
        },
        "tools": [
          "status",
          "doctor",
          "strategy",
          "history",
          "live_prices",
          "what_if",
          "rebalance_plan",
          "discipline",
          "decisions",
          "explain_decision",
          "record_execution",
          "ingest_event",
          "news_sources",
          "add_news_source",
          "remove_news_source",
          "buy",
          "record_existing_position",
          "sell",
          "deposit",
          "withdraw",
          "set_allocations",
          "track_asset",
          "untrack_asset",
          "run_committee"
        ],
        "scope": "product operation"
      }
    }
  ],
  "open_issues": null,
  "agent_runtime_version": "2.1.300 (Claude Code)",
  "verifies_run_id": null,
  "total_s": 104.07881379127502,
  "license": null,
  "tool_calls": 8,
  "model_version": "claude-haiku-5-5",
  "example_checks": [],
  "mcp": null,
  "other_model": null,
  "first_use_s": null,
  "native_tool_calls": 8,
  "last_commit_at": null,
  "source": "https://github.com/longsizhuo/openInvest",
  "models_agree": null,
  "maintenance_verdict": null,
  "cost_usd": 0.008347950000000002,
  "safety": null,
  "answered_issues": null,
  "what_failed": null,
  "steps": [
    "cd <host-path> && git log -1 --format=%H 2>/dev/null; ls -la; cat README.md 2>/dev/null | head -200",
    "ls -la <host-path> 2>/dev/null; echo \"CDP=$CDP_URL $<env-var>\"; which python3 node npm uv pip3 2>&1",
    "cd <host-path> && which uv uvx; sed -n 1,80p docs/QUICK_START.md; grep -n \"scripts\" -A6 pyproject.toml; cat llms-install.md | head -60",
    "cd <host-path> && curl -LsSf https://astral.sh/uv/install.sh | sh 2>&1 | tail -5; export PATH=$HOME/.local/bin:$PATH; uv --version && export INVEST_HOME=$HOME/openInvest && uvx openinvest doctor 2>&1 | tail -40",
    "cd <host-path> && export INVEST_HOME=$HOME/openInvest; U=<host-path>; printf '%s\\n' '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-06-18\",\"capabilities\":{},\"clientInfo\":{\"name\":\"probe\",\"version\":\"0\"}}}' '{\"jsonrpc\":\"2.0\",\"method\":\"notifications/initialized\"}' '{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/list\"}' | timeout 120 $U openinvest-mcp 2>/dev/null | python3 -c 'import sys,json\nfor l in sys.stdin:\n  m=json.loads(l)\n  if m.get(\"id\")==2: print([t[\"name\"] for t in m[\"result\"][\"tools\"]])\n  elif m.get(\"id\")==1: print(\"init ok\", m[\"result\"][\"serverInfo\"])'",
    "cd <host-path> && export INVEST_HOME=$HOME/openInvest; U=<host-path>; printf '%s\\n' '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-06-18\",\"capabilities\":{},\"clientInfo\":{\"name\":\"probe\",\"version\":\"0\"}}}' '{\"jsonrpc\":\"2.0\",\"method\":\"notifications/initialized\"}' '{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/list\"}' > /tmp/mcp_in.txt; timeout 120 $U openinvest-mcp < /tmp/mcp_in.txt > /tmp/mcp_out.txt 2> /tmp/mcp_err.txt; echo rc=$?; head -c 1500 /tmp/mcp_out.txt; echo; tail -c 1500 /tmp/mcp_err.txt",
    "cd <host-path> && export INVEST_HOME=$HOME/openInvest; U=<host-path>; timeout 180 $U openinvest mcp < /tmp/mcp_in.txt > /tmp/mcp_out.txt 2> /tmp/mcp_err.txt; echo rc=$?; python3 -c '\nimport json\nfor l in open(\"/tmp/mcp_out.txt\"):\n  m=json.loads(l)\n  if m.get(\"id\")==2: print([t[\"name\"] for t in m[\"result\"][\"tools\"]])\n  elif m.get(\"id\")==1: print(\"init ok\", m[\"result\"][\"serverInfo\"])'; tail -c 600 /tmp/mcp_err.txt",
    "cd <host-path> && mkdir -p .coldpass && ls -la .coldpass && cat > .coldpass/probe.json <<'EOF'\n{\"kind\":\"mcp\",\"argv\":[\"<host-path>\",\"openinvest\",\"mcp\"],\"cwd\":\"<host-path>\",\"env\":{\"INVEST_HOME\":\"<host-path>\"}}\nEOF\ncat > .coldpass/report.json <<'EOF'\n{\"outcome\":\"working\",\"operation\":\"Start the openInvest stdio MCP server via uvx and list its tools (tools/list returned 24 tools, e.g. status, doctor, run_committee, buy, sell).\",\"operation_scope\":\"Covers MCP server start and tools/list only. Direct-path run_committee needs LLM_API_KEY/DEEPSEEK_API_KEY (not set in guest); email digest needs EMAIL_SENDER/EMAIL_PASSWORD (not set). Neither was exercised.\",\"steps\":[\"curl -LsSf https://astral.sh/uv/install.sh | sh (installed uv 0.13.1)\",\"export INVEST_HOME=$HOME/openInvest; uvx openinvest doctor (ran; status reported optional gaps only)\",\"uvx openinvest mcp (stdio MCP; initialize + tools/list succeeded, server 1.30.0)\"],\"deviations\":[\"README quickstart 'claude mcp add openinvest -e INVEST_HOME=~/openInvest -- uvx openinvest-mcp' fails: 'No solution found ... openinvest-mcp was not found in the package registry'. Ran 'uvx openinvest mcp' instead, the form documented in llms-install.md.\",\"uv was not preinstalled; installed via the README curl installer.\"],\"stuck_step\":null,\"main_blocker\":null,\"suggested_fix\":\"Update README quickstart to 'uvx openinvest mcp' (or 'uvx --from openinvest openinvest-mcp') since the PyPI package does not publish an 'openinvest-mcp' top-level package.\"}\nEOF\n<env-var>=<host-path> python3 -I <host-path> --validate; echo rc=$?"
  ],
  "platform_conflicts": null,
  "claims_note": null,
  "maintained_note": null,
  "repo": "longsizhuo/openInvest",
  "service_tier": null,
  "maintained": null,
  "source_pin": null,
  "operation_scope": "product operation",
  "reasoning": "low",
  "claims": [],
  "platform": "linux",
  "cost_to_try": null,
  "backend": null,
  "tool_transport": "mcp-assigned-vm",
  "hardware": null,
  "agent_interface": null,
  "profile": {
    "model": "claude-haiku-5-5",
    "reasoning": "low"
  },
  "date": "2026-10-18T16:02:58.638293+00:00",
  "kind": "mcp",
  "resources": {
    "cpus": 2,
    "memory_mib": 4096,
    "disk_mib": 32768
  },
  "error_excerpt": null,
  "pass": true,
  "evidence_version": null,
  "source_revision": null,
  "run_id": "longsizhuo--openInvest-claude-haiku-5-5-1792339274559460856",
  "last_release_at": null,
  "furthest_model": null,
  "model": "claude-haiku-5-5",
  "what_it_did": "Start the openInvest stdio MCP server via uvx and list its tools (tools/list returned 24 tools, e.g. status, doctor, run_committee, buy, sell).",
  "sandbox_source": null,
  "other_run_id": null,
  "hosting": null,
  "tested_commit": null,
  "guest_setup": null,
  "mcp_context": null,
  "agent_interfaces": [],
  "setup_identity": null,
  "works": null,
  "install_s": null,
  "fix_id": null,
  "tokens_in": 170361,
  "tested_at": null,
  "test_version": "readme-03aea4c41d53955e3723c330e9927d2a9df627f6642624cc0078a97c73a53c8a",
  "recovery": {
    "source": "legacy-oct16-18",
    "original_run_id": "longsizhuo--openInvest-claude-haiku-5-5-1792339274559460856",
    "historical": true,
    "ledger_sha256": "c5e6a833c182c1e2aecf69d0bd0020aec63c65d98f3e933e4b32232340312736"
  },
  "transcript_url": "/transcripts/longsizhuo--openInvest-claude-haiku-5-5-1792339274559460856.txt",
  "report_url": "/reports/longsizhuo--openInvest-claude-haiku-5-5-1792339274559460856.json"
}
