{
  "run_id": "soumatheusgomes--editonny-claude-haiku-5-5-1792770215771633705",
  "date": "2026-10-23T16:21:37.226980+00:00",
  "repo": "soumatheusgomes/editonny",
  "kind": "repo",
  "source": "https://github.com/soumatheusgomes/editonny",
  "commit": "49714f2fba6eafb76b903376e1fe9f50b685506a",
  "model": "claude-haiku-5-5",
  "model_version": "claude-haiku-5-5",
  "test_version": "readme-bdc1b9b3c0d2673aef87e076d14084a8123ddcf09d520c1ee2e364a37c3f4bb9",
  "pass": true,
  "outcome": "pass",
  "time_to_working_s": 2141.7174506540177,
  "total_s": 2281.4553039073944,
  "steps": [
    "cd <guest-path> && pwd && ls -la && id -u && cat /etc/os-release | head -3 && python3 --version && (git -C . status 2>&1 | head -2)",
    "cd <guest-path> && cat README.md 2>/dev/null || ls",
    "cd <guest-path> && ls -la .coldpass; for c in node npm npx uv ffmpeg ffprobe tesseract git curl; do printf \"%s: \" $c; command -v $c || echo MISSING; done; node -v 2>/dev/null; npm -v 2>/dev/null; cat editonny.py; ls /inputs 2>/dev/null; ls <guest-path> 2>/dev/null; sed -n 1,80p package.json",
    "cd <guest-path> && (git init -q 2>&1; git remote add origin https://github.com/soumatheusgomes/editonny.git 2>&1; timeout 120 git fetch --depth 1 origin 49714f2fba6eafb76b903376e1fe9f50b685506a 2>&1 | tail -3; git reset --mixed FETCH_HEAD 2>&1 | tail -2; git log --oneline -1 2>&1); ls /inputs 2>&1; echo ---; sudo -n true && echo SUDO_OK; sudo apt-get update -qq 2>&1 | tail -2; sudo DEBIAN_FRONTEND=noninteractive apt-get install -y -qq ffmpeg tesseract-ocr 2>&1 | tail -3; command -v ffmpeg ffprobe tesseract",
    "cd /tmp && export NODE_USE_ENV_PROXY=1; curl -fsSL https://astral.sh/uv/install.sh -o /tmp/uv-install.sh && sh /tmp/uv-install.sh 2>&1 | tail -2; export PATH=\"$HOME/.local/bin:$PATH\"; uv --version; mkdir -p /tmp/node-dl && cd /tmp/node-dl && curl -fsSL https://nodejs.org/dist/latest-v24.x/SHASUMS256.txt -o SHASUMS.txt 2>&1; grep -o 'node-v[0-9.]*-linux-x64.tar.xz' SHASUMS.txt | head -1",
    "cd /tmp/node-dl && curl -fsSL -O https://nodejs.org/dist/latest-v24.x/node-v24.22.1-linux-x64.tar.xz && grep 'node-v24.22.1-linux-x64.tar.xz$' SHASUMS.txt | sha256sum -c - && sudo mkdir -p /opt/node24 && sudo tar -xJf node-v24.22.1-linux-x64.tar.xz -C /opt/node24 --strip-components=1 && export PATH=/opt/node24/bin:$HOME/.local/bin:$PATH && node -v && npm -v && npx -v",
    "cd <guest-path> && python3 install.py --help 2>&1 | head -30; grep -niE 'telemetry|consent|input\\(|prompt' install.py skills/editonny/scripts/editonny.py | head -20; ls skills/editonny/scripts/ | head; ",
    "export PATH=/opt/node24/bin:$HOME/.local/bin:$PATH NODE_USE_ENV_PROXY=1; cd <guest-path> && timeout 900 python3 install.py --target both 2>&1 | tail -25; echo \"exit=$?\"",
    "export PATH=/opt/node24/bin:$HOME/.local/bin:$PATH; cd <guest-path> && timeout 300 python3 ~/.local/share/editonny/scripts/editonny.py doctor 2>&1 | tail -40; echo \"exit=${PIPESTATUS[0]}\"; timeout 120 python3 ~/.local/share/editonny/scripts/editonny.py media status 2>&1 | tail -15",
    "export PATH=/opt/node24/bin:$HOME/.local/bin:$PATH NODE_USE_ENV_PROXY=1; cd <guest-path> && timeout 1200 npm ci --ignore-scripts 2>&1 | tail -5; echo \"npm_ci=${PIPESTATUS[0]}\"; timeout 900 uv sync --locked --directory skills/editonny/engine 2>&1 | tail -3; echo \"uv_sync=${PIPESTATUS[0]}\"; timeout 900 npm run build 2>&1 | tail -8; echo \"build=${PIPESTATUS[0]}\"",
    "export PATH=/opt/node24/bin:$HOME/.local/bin:$PATH NODE_USE_ENV_PROXY=1; cd <guest-path> && timeout 1500 npm run check > /tmp/check.log 2>&1; echo \"check=$?\"; tail -25 /tmp/check.log",
    "export PATH=/opt/node24/bin:$HOME/.local/bin:$PATH NODE_USE_ENV_PROXY=1; cd <guest-path> && timeout 1200 npm run test:engine > /tmp/engine.log 2>&1; echo \"test_engine=$?\"; tail -4 /tmp/engine.log; timeout 1200 python3 scripts/smoke_engine.py > /tmp/smoke.log 2>&1; echo \"smoke=$?\"; tail -8 /tmp/smoke.log; echo ---; python3 editonny.py --help 2>&1 | head -60",
    "export PATH=/opt/node24/bin:$HOME/.local/bin:$PATH; cd <guest-path> && python3 editonny.py catalog --help 2>&1; echo ---; python3 editonny.py catalog caption 2>&1 | head -20; echo \"exit=$?\"; echo ---; python3 editonny.py guide --help 2>&1 | head -20",
    "cd <guest-path> && grep -rniE 'cron|schedul|webhook|--once|--now|watch loop|while True' --include=*.py --include=*.md skills/editonny/scripts skills/editonny/engine scripts install.py editonny.py 2>/dev/null | grep -v '\\.venv' | head -20; echo ---; ls -la <guest-path>; ls /inputs/coldpass-preflight.py 2>&1; ls -la .coldpass; ls -d .work 2>/dev/null && ls .work | head",
    "cd <guest-path> && sed -n 300,360p skills/editonny/engine/helpers/watch_preview.py; ls skills/editonny/engine/.venv/bin/python 2>&1",
    "cd <guest-path> && sed -n 1,30p skills/editonny/engine/helpers/watch_preview.py | cut -c1-220; grep -n 'def \\|preview_marks\\|preview_approval\\|preview_style\\|preview_trims\\|saved_at\\|print(' skills/editonny/engine/helpers/watch_preview.py | head -60",
    "cd <guest-path> && sed -n 51,84p skills/editonny/engine/helpers/watch_preview.py | cut -c1-200",
    "export PATH=/opt/node24/bin:$HOME/.local/bin:$PATH; mkdir -p <guest-path> && printf '%s\\n' '{\"phase\": \"cut\", \"saved_at\": \"2026-10-23T10:00:00\", \"note\": \"cut looks good\"}' > <guest-path> && cd <guest-path> && for i in 1 2; do uv run --locked --directory skills/editonny/engine python helpers/watch_preview.py --edit-dir <guest-path> --once; echo \"exit=$?\"; done; ls -la <guest-path> <guest-path> 2>&1",
    "export PATH=/opt/node24/bin:$HOME/.local/bin:$PATH; E=<guest-path>; rm -f $E/preview_cache/watch_seen.json && chmod 555 $E/preview_cache && cd <guest-path> && for i in 1 2; do uv run --locked --directory skills/editonny/engine python helpers/watch_preview.py --edit-dir $E --once 2>/tmp/err$i.txt; echo \"exit=$?\"; cat /tmp/err$i.txt; done",
    "cd <guest-path> && grep -c 'Scenes come from the bundled catalog of \\*\\*145\\*\\* motion scenes and \\*\\*79\\*\\* original clips' README.md; grep -n '^    if args.once:$' skills/editonny/engine/helpers/watch_preview.py; grep -c 'python3 scripts/smoke_engine.py' README.md; grep -n 'Local transcription and rendering' README.md | head -2; grep -n 'icons verified' -r scripts design-system/scripts 2>/dev/null | head -2; grep -n 'Visual catalog' skills/editonny/scripts/*.py skills/editonny/engine/*.py 2>/dev/null | head -2",
    "cd <guest-path> && mkdir -p .coldpass && NODEENV='{\"PATH\":\"/opt/node24/bin:<guest-path>\",\"NODE_USE_ENV_PROXY\":\"1\"}' && cat > .coldpass/probe.json <<'EOF'\n{\"kind\":\"cli\",\"argv\":[\"python3\",\"editonny.py\",\"catalog\",\"mortgage\"],\"cwd\":\"<guest-path>\",\"expected_text\":\"mortgage-calculator\"}\nEOF\ncat > .coldpass/claims.json <<'EOF'\n[{\"kind\":\"claim\",\"claim\":\"The bundled visual catalog of motion scenes can be searched locally\",\"source\":\"Scenes come from the bundled catalog of **145** motion scenes and **79** original clips\",\"input\":\"mortgage\",\"expected\":\"the mortgage-calculator scene is listed\",\"probe_kind\":\"cli\",\"argv\":[\"python3\",\"editonny.py\",\"catalog\",\"mortgage\"],\"expected_text\":\"mortgage-calculator\",\"cwd\":\"<guest-path>\"}]\nEOF\ncat > .coldpass/examples.json <<EOF\n[\n{\"kind\":\"example\",\"claim\":\"Diagnostics of the installed skill (README terminal install)\",\"source\":\"README.md#install (Prefer the terminal)\",\"input\":\"doctor\",\"expected\":\"visual catalog reports 145 scenes with no missing files\",\"argv\":[\"python3\",\"<guest-path>\",\"doctor\"],\"cwd\":\"<guest-path>\",\"env\":$NODEENV,\"expected_text\":\"145 scenes; 0 missing files\"},\n{\"kind\":\"example\",\"claim\":\"Engine smoke test renders a sample\",\"source\":\"README.md (Develop and validate)\",\"input\":\"scripts/smoke_engine.py\",\"expected\":\"a PASS line naming the rendered MP4\",\"argv\":[\"python3\",\"scripts/smoke_engine.py\"],\"cwd\":\"<guest-path>\",\"env\":$NODEENV,\"expected_text\":\"PASS:\"},\n{\"kind\":\"example\",\"claim\":\"Full repository check: lint, typecheck, unit tests, icon registry\",\"source\":\"README.md (Develop and validate)\",\"input\":\"npm run check\",\"expected\":\"icon registry verifies 49 icons\",\"argv\":[\"npm\",\"run\",\"check\"],\"cwd\":\"<guest-path>\",\"env\":$NODEENV,\"expected_text\":\"49 icons verified.\"},\n{\"kind\":\"example\",\"claim\":\"Engine unit test suite\",\"source\":\"README.md (Develop and validate)\",\"input\":\"npm run test:engine\",\"expected\":\"100 engine tests pass\",\"argv\":[\"npm\",\"run\",\"test:engine\"],\"cwd\":\"<guest-path>\",\"env\":$NODEENV,\"expected_text\":\"OK (skipped=1)\"},\n{\"kind\":\"example\",\"claim\":\"Local web guide development server\",\"source\":\"README.md#open-the-guide\",\"reason\":\"Long-running dev server (python3 editonny.py guide); not a finite example. Left out on purpose; the guide was built with npm run build instead.\",\"deferred\":true}\n]\nEOF\ncat > .coldpass/cycles.json <<EOF\n{\"detected\":true,\"checks\":[{\"claim\":\"Preview watcher reports a new user action in one pass\",\"source\":\"skills/editonny/engine/helpers/watch_preview.py\",\"quote\":\"    if args.once:\",\"schedule\":\"normal trigger: the watcher loops, polling every --interval seconds (default 1.0) until Ctrl+C; --once checks once and exits\",\"method\":\"run-once via the documented --once flag, using a fixture edit folder outside the checkout whose preview_cache is read-only so seen-state does not suppress the event on replay\",\"input\":\"<guest-path> containing preview_approval.json with phase cut, saved_at 2026-10-23T10:00:00, note cut looks good\",\"expected\":\"one line announcing the cut approval with its saved time\",\"kind\":\"cli\",\"argv\":[\"uv\",\"run\",\"--locked\",\"--directory\",\"skills/editonny/engine\",\"python\",\"helpers/watch_preview.py\",\"--edit-dir\",\"<guest-path>\",\"--once\"],\"cwd\":\"<guest-path>\",\"env\":$NODEENV,\"expected_text\":\"[preview] cut APPROVED\"}]}\nEOF\nfor f in probe claims examples cycles; do python3 -I -c \"import json,sys;json.load(open(sys.argv[1]));print('ok',sys.argv[1])\" .coldpass/$f.json; done",
    "cd <guest-path> && <env-var>=<guest-path> timeout 1700 python3 -I <guest-path> --validate --replay 2>&1 | tail -60; echo \"exit=${PIPESTATUS[0]}\"",
    "cd <guest-path> && cat > .coldpass/report.json <<'EOF'\n{\"outcome\":\"working\",\"fault_owner\":null,\"operation\":\"Install editonny with its README terminal installer, verify it with doctor, then search the bundled visual scene catalog (python3 editonny.py catalog mortgage) and get mortgage-calculator back; also run the README development checks (npm ci, uv sync, npm run build, npm run check, npm run test:engine, scripts/smoke_engine.py).\",\"operation_scope\":\"Local Linux (Ubuntu 24.04, x86_64) guest. Prerequisites installed here: Node 24.22.1 (tarball from nodejs.org, checksum verified), uv 0.13.5 (astral.sh installer), ffmpeg/ffprobe and tesseract (apt). Python 3.12.3 used for the launcher and engine. Not covered: the interactive guide server (long-running), the Playwright browser tests, and the agent-browser preview tests, which need a browser download and were not run.\",\"steps\":[\"git init; git remote add origin https://github.com/soumatheusgomes/editonny.git; git fetch --depth 1 origin 49714f2fba6eafb76b903376e1fe9f50b685506a; git reset --mixed FETCH_HEAD\",\"sudo apt-get install -y ffmpeg tesseract-ocr\",\"curl -fsSL https://astral.sh/uv/install.sh | sh\",\"Node 24.22.1 tarball from nodejs.org, SHA-256 checked, extracted to /opt/node24\",\"python3 install.py --target both\",\"python3 ~/.local/share/editonny/scripts/editonny.py doctor\",\"python3 ~/.local/share/editonny/scripts/editonny.py media status\",\"npm ci --ignore-scripts\",\"uv sync --locked --directory skills/editonny/engine\",\"npm run build\",\"npm run check\",\"npm run test:engine\",\"python3 scripts/smoke_engine.py\",\"python3 editonny.py catalog mortgage\"],\"deviations\":[\"Ubuntu apt does not provide Node 22.13+/24, so Node was installed from the official nodejs.org tarball instead of apt; uv was installed with its astral.sh script; both are prerequisite installs, not product changes.\",\"README says to clone the repo; the workspace snapshot was used instead, with the pinned commit fetched via the git steps from the task, so the working tree matches commit 49714f2.\",\"The task's /inputs/coldpass-preflight.py does not exist in this guest; the checker at <guest-path> was run instead with the documented flags.\",\"Replay of the cycle uses a fixture edit folder outside the checkout (<guest-path>) with a read-only preview_cache, so seen-state does not suppress the event on repeated runs. The cycle is the documented --once mode of helpers/watch_preview.py, which the README does not describe; it is a manual single pass, not a product scheduler.\",\"The local guide (python3 editonny.py guide) was not started: it is a long-running dev server, so it is recorded as a deferred example.\",\"npm run test:browser, npm run test:preview and npm run test:three were not run: they need a Chromium or agent-browser download, which the task forbids. No browser was installed.\",\"npm run check and npm run test:engine print noisy warnings (act() warnings, a ResourceWarning and a true-peak ERROR line from a test fixture) but exit 0 and report all tests passed.\"],\"stuck_step\":null,\"main_blocker\":null,\"plain_failure\":null,\"suggested_fix\":\"None required for this run. Optional: the README could say that Ubuntu's apt Node is too old so readers should install Node 22.13+ explicitly, and that the preview helper's --once mode is a documented way to check approvals.\"}\nEOF\npython3 -I -c \"import json;json.load(open('.coldpass/report.json'));print('report ok')\"; ls .coldpass; pgrep -af 'editonny.py guide|next|vite' | grep -v pgrep || echo \"no servers running\"; <env-var>=<guest-path> timeout 1700 python3 -I <guest-path> --validate --replay > /tmp/final-check.json 2>&1; echo \"checker_exit=$?\"; python3 -I -c \"import json;d=json.load(open('/tmp/final-check.json'));print('valid=',d['valid'],'problems=',d['problems'],'replay=',d['replay']['status'])\""
  ],
  "stuck_step": null,
  "error_excerpt": null,
  "what_it_did": "Install editonny with its README terminal installer, verify it with doctor, then search the bundled visual scene catalog (python3 editonny.py catalog mortgage) and get mortgage-calculator back; also run the README development checks (npm ci, uv sync, npm run build, npm run check, npm run test:engine, scripts/smoke_engine.py).",
  "suggested_fix": null,
  "tokens_in": 636514,
  "tokens_out": 19735,
  "cost_usd": 0.02547857,
  "usage_complete": true,
  "checks": [
    {
      "check": "operation",
      "status": "PASS",
      "details": {
        "working": true,
        "argv": [
          "python3",
          "editonny.py",
          "catalog",
          "mortgage"
        ],
        "kind": "cli",
        "returncode": 0,
        "stdout": "mortgage-calculator \u00b7 Real estate \u00b7 Mortgage calculator\n1 scenes found.",
        "stderr": "",
        "needs_credentials": false,
        "needs_browser": false,
        "scope": "product operation"
      }
    }
  ],
  "safety": {
    "version": "z2x-1",
    "rules_version": "z2x-1",
    "summary": "Review signals: 1 connection review, 41 known vulnerability. 1 static matches retained as context.",
    "findings": [
      {
        "kind": "connection-review",
        "count": 1,
        "note": "Repository processes attempted these non-loopback connections; proxies can hide the final hostname.",
        "location_count": 12,
        "process_count": 4
      },
      {
        "kind": "known-vulnerability",
        "count": 41,
        "note": "OSV reports a known vulnerability in this dependency version.",
        "location_count": 2
      }
    ],
    "context": [
      {
        "kind": "hardcoded-secret",
        "count": 1,
        "note": "Gitleaks found a possible hardcoded secret; value withheld.",
        "location_count": 1,
        "path": "tests/integration/test_http_clients.py"
      }
    ],
    "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=soumatheusgomes--editonny-claude-haiku-5-5-1792770215771633705",
    "evidence_file": "/data/safety/soumatheusgomes--editonny-claude-haiku-5-5-1792770215771633705.json.gz"
  },
  "agent_execution": "native_agent",
  "agent_runtime": "claude-code",
  "agent_runtime_version": "2.1.300 (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": 23,
  "native_bundle": null,
  "architecture": null,
  "backend": "hyperv",
  "platform_details": {
    "backend": "hyperv",
    "os": "linux"
  },
  "platform_conflicts": null,
  "sandbox_source": null,
  "source_pin": {
    "commit": "49714f2fba6eafb76b903376e1fe9f50b685506a",
    "url": "https://github.com/soumatheusgomes/editonny"
  },
  "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": 23,
  "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": "MIT",
  "repo_url": "https://github.com/soumatheusgomes/editonny",
  "cost_to_try": "free",
  "hardware": null,
  "what_failed": null,
  "local_or_hosted": "local",
  "cycle_checks": [
    {
      "kind": "cycle",
      "claim": "Preview watcher reports a new user action in one pass",
      "source": "skills/editonny/engine/helpers/watch_preview.py",
      "input": "<guest-path> containing preview_approval.json with phase cut, saved_at 2026-10-23T10:00:00, note cut looks good",
      "expected": "one line announcing the cut approval with its saved time",
      "command": "uv run --locked --directory skills/editonny/engine python helpers/watch_preview.py --edit-dir <guest-path> --once",
      "schedule": "normal trigger: the watcher loops, polling every --interval seconds (default 1.0) until Ctrl+C; --once checks once and exits",
      "method": "run-once via the documented --once flag, using a fixture edit folder outside the checkout whose preview_cache is read-only so seen-state does not suppress the event on replay",
      "verdict": "yes",
      "outcome": "Triggered one cycle by hand (run-once via the documented --once flag, using a fixture edit folder outside the checkout whose preview_cache is read-only so seen-state does not suppress the event on replay; normal trigger: normal trigger: the watcher loops, polling every --interval seconds (default 1.0) until Ctrl+C; --once checks once and exits): [preview] cut APPROVED \u00b7 note: \"cut looks good\"; saved at 10:00:00\n[preview] attention: approval refers to an earlier version of cut (None that has since changed. Review the current export before treating it as approved\nNotice: could not write <guest-path> [Errno 13] Permission denied: '<guest-path>'",
      "evidence": "[preview] cut APPROVED \u00b7 note: \"cut looks good\"; saved at 10:00:00\n[preview] attention: approval refers to an earlier version of cut (None that has since changed. Review the current export before treating it as approved\nNotice: could not write <guest-path> [Errno 13] Permission denied: '<guest-path>'",
      "returncode": 0
    }
  ],
  "claims": [
    {
      "kind": "claim",
      "claim": "The bundled visual catalog of motion scenes can be searched locally",
      "source": "Scenes come from the bundled catalog of **145** motion scenes and **79** original clips",
      "input": "mortgage",
      "expected": "the mortgage-calculator scene is listed",
      "command": "python3 editonny.py catalog mortgage",
      "verdict": "yes",
      "outcome": "Real input produced the expected result: mortgage-calculator",
      "evidence": "mortgage-calculator \u00b7 Real estate \u00b7 Mortgage calculator\n1 scenes found.\n",
      "returncode": 0,
      "source_checked": true,
      "source_file": "README.md"
    }
  ],
  "claims_note": null,
  "example_checks": [
    {
      "kind": "example",
      "claim": "Diagnostics of the installed skill (README terminal install)",
      "source": "README.md#install (Prefer the terminal)",
      "input": "doctor",
      "command": "python3 <guest-path> doctor",
      "evidence": "editonny 1.1.0 \u2014 local diagnostic\nPackage: <guest-path> \u00b7 code 67474f0f60be\nOK \u00b7 Launcher Python: 3.12.3\nOK \u00b7 uv: <guest-path>\nOK \u00b7 ffmpeg: /usr/bin/ffmpeg\nOK \u00b7 ffprobe: /usr/bin/ffprobe\nOK \u00b7 node: /opt/node24/bin/node\nOK \u00b7 npx: /opt/node24/bin/npx\nOK \u00b7 Python engine: 3.12.3\nOK \u00b7 Visual catalog: 145 scenes; 0 missing files\nOK \u00b7 HyperFrames: Pinned in engine/project-template/package.json; the first render may download the package.\nThis diagnostic does not replace a render test or final video review.",
      "deferred": false,
      "expected": "visual catalog reports 145 scenes with no missing files",
      "returncode": 0,
      "verdict": "yes",
      "outcome": "command completed successfully"
    },
    {
      "kind": "example",
      "claim": "Engine smoke test renders a sample",
      "source": "README.md (Develop and validate)",
      "input": "scripts/smoke_engine.py",
      "command": "python3 scripts/smoke_engine.py",
      "evidence": "HyperFrames: lint\nHyperFrames: check\nHyperFrames: snapshot --at 1,1.5,2 --no-end --describe false --output snapshots\nHyperFrames: render --quality draft --fps 24 --output renders/smoke.mp4\nPASS: <guest-path> smoke r2rmshcc/project with spaces/renders/smoke.mp4\nFrame: <guest-path> smoke r2rmshcc/frame-1.png",
      "deferred": false,
      "expected": "a PASS line naming the rendered MP4",
      "returncode": 0,
      "verdict": "yes",
      "outcome": "command completed successfully"
    },
    {
      "kind": "example",
      "claim": "Full repository check: lint, typecheck, unit tests, icon registry",
      "source": "README.md (Develop and validate)",
      "input": "npm run check",
      "command": "npm run check",
      "evidence": "a failed copy and names its visible state\n\u001b[22m\u001b[39mThe current testing environment is not configured to support act(...)\n\n\u001b[90mstderr\u001b[2m | src/features/feedback/use-copy.test.tsx\u001b[2m > \u001b[22m\u001b[2museCopy\u001b[2m > \u001b[22m\u001b[2mwrites to the clipboard and shows the success toast\n\u001b[22m\u001b[39mThe current testing environment is not configured to support act(...)\n\n\u001b[90mstderr\u001b[2m | src/features/feedback/use-copy.test.tsx\u001b[2m > \u001b[22m\u001b[2museCopy\u001b[2m > \u001b[22m\u001b[2mselects the text and shows the fallback toast when the clipboard rejects\n\u001b[22m\u001b[39mThe current testing environment is not configured to support act(...)",
      "deferred": false,
      "expected": "icon registry verifies 49 icons",
      "returncode": 0,
      "verdict": "yes",
      "outcome": "command completed successfully"
    },
    {
      "kind": "example",
      "claim": "Engine unit test suite",
      "source": "README.md (Develop and validate)",
      "input": "npm run test:engine",
      "command": "npm run test:engine",
      "evidence": "gration -p 'test_*.py'\n\n........................................s.............................<guest-path> ResourceWarning: unclosed file <_io.BufferedReader name='/tmp/tmpr3k8u9u2/f_00001.jpg'>\n  w, h = Image.open(img).size\nResourceWarning: Enable tracemalloc to get the object allocation traceback\n..............ERROR: Encoded true peak remains above -1.0 dBTP after retries; output is not a validated final\n................\n----------------------------------------------------------------------\nRan 100 tests in 262.979s\n\nOK (skipped=1)",
      "deferred": false,
      "expected": "100 engine tests pass",
      "returncode": 0,
      "verdict": "yes",
      "outcome": "command completed successfully"
    },
    {
      "kind": "example",
      "claim": "Local web guide development server",
      "source": "README.md#open-the-guide",
      "input": "",
      "command": "",
      "evidence": "Long-running dev server (python3 editonny.py guide); not a finite example. Left out on purpose; the guide was built with npm run build instead.",
      "deferred": true,
      "expected": "documented command completes successfully",
      "verdict": "deferred",
      "outcome": "Long-running dev server (python3 editonny.py guide); not a finite example. Left out on purpose; the guide was built with npm run build instead."
    }
  ],
  "does_what_it_says": "yes",
  "maintenance": {
    "last_commit_at": "2026-10-21T03:51:16Z",
    "commits_90d": 27,
    "merged_prs_90d": 0,
    "open_issues": 4,
    "open_prs": 2,
    "reply_share": null,
    "reply_threads": 0,
    "median_reply_hours": null,
    "last_release_at": null,
    "archived": false,
    "verdict": "maintained",
    "note": "actively maintained: last commit 2 days ago; 27 commits and 0 merged PRs in 90 days; 4 open issues, 2 open PRs; no releases"
  },
  "maintenance_verdict": "maintained",
  "maintenance_note": "actively maintained: last commit 2 days ago; 27 commits and 0 merged PRs in 90 days; 4 open issues, 2 open PRs; no releases",
  "maintained": "active",
  "maintained_note": "last commit 2 days ago; 4 open issues, 6 answered or closed",
  "last_commit_at": "2026-10-21T03:51:22Z",
  "last_release_at": null,
  "open_issues": 4,
  "answered_issues": 6,
  "platforms_claimed": [
    "mac"
  ],
  "topic": "creative",
  "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-23T16:21:37.226980+00:00",
  "tested_commit": "49714f2fba6eafb76b903376e1fe9f50b685506a",
  "tested_with": {
    "agent": "claude-code",
    "agent_version": "2.1.300 (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": "soumatheusgomes/editonny",
    "source": "https://github.com/soumatheusgomes/editonny",
    "commit": "49714f2fba6eafb76b903376e1fe9f50b685506a",
    "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.300 (Claude Code)",
    "tool_transport": "mcp-assigned-vm",
    "runtime": null,
    "runtime_version": null,
    "runtime_revision": null,
    "sandbox_source": null,
    "guest_setup": null,
    "source_pin": {
      "commit": "49714f2fba6eafb76b903376e1fe9f50b685506a",
      "url": "https://github.com/soumatheusgomes/editonny"
    },
    "platform_details": {
      "os": "linux",
      "backend": "hyperv"
    },
    "platform_conflicts": null,
    "reasoning": "low",
    "service_tier": null,
    "resources": {
      "cpus": 2,
      "memory_mib": 4096,
      "disk_mib": 32768
    },
    "operation": "Install editonny with its README terminal installer, verify it with doctor, then search the bundled visual scene catalog (python3 editonny.py catalog mortgage) and get mortgage-calculator back; also run the README development checks (npm ci, uv sync, npm run build, npm run check, npm run test:engine, scripts/smoke_engine.py).",
    "operation_scope": "product operation",
    "hosting": null,
    "kind": "repo",
    "test_version": "readme-bdc1b9b3c0d2673aef87e076d14084a8123ddcf09d520c1ee2e364a37c3f4bb9",
    "evidence_version": null
  },
  "other_model": null,
  "other_run_id": null,
  "models_agree": null,
  "furthest_model": null,
  "transcript_url": null,
  "report_url": "/reports/soumatheusgomes--editonny-claude-haiku-5-5-1792770215771633705.json"
}
