coldpass

tcorbettclark/orange3-nnviewer

GitHub ↗ · How this check works

Per-setup public labels: Linux / Haiku: Works

Static status badge · SVG · read-only JSON. Embed with ![Coldpass status](https://coldpass.dev/badge/tcorbettclark--orange3-nnviewer.svg).

data

Works

The recorded run passed on 1 setup.

Answers apply to each recorded setup, revision and operation. Earlier observations remain in Run details.

Tested on Linux
PlatformHaikuLuna
Linuxyes

Linux / Haiku 5.5: yes · Oct 27, 2026 · f3363285b669 · claude-code / 2.1.310 (Claude Code)
Recorded operation: <guest-path> -m orangecontrib.nnviewer.widgets.ow_nn_viewer

Does what it says
1 of 1 claims checked out
  • The add-on builds a wheel with uv build: Real input produced the expected result: Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl

    Source: Build a wheel (a single self-contained plugin file):

    Input: uv build

    Expected: Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl

    Command: uv build

    Observed: Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl

MCP
No
Local or hosted
local
Local: runs on your machine
Needs keys or browser
None seen
Maintained
Maintained
actively maintained: last commit 0 days ago; 4 commits and 0 merged PRs in 90 days; 0 open issues, 0 open PRs; no releases

Last commit Oct 27, 2026

Setup time
9 min 15 s
9 min 15 s to a working result
Issue
none found in recorded check
Examples
1 of 1 ran as expected
  • Documented full test suite: README '## Tests' command 'python -m pytest -q' was run in the VM with QT_QPA_PLATFORM=offscreen: 13 passed, 1 failed. The failure is tests/test_render.py::test_boxes_render_white_over_lines (box pixel #fceded is not white, a red edge shows through a label box). Not a harness issue; README documents no nonzero result, so the failing full run is not replayed as an example.

    Source: README.md

    Expected: documented command completes successfully

    Observed: README '## Tests' command 'python -m pytest -q' was run in the VM with QT_QPA_PLATFORM=offscreen: 13 passed, 1 failed. The failure is tests/test_render.py::test_boxes_render_white_over_lines (box pixel #fceded is not white, a red edge shows through a label box). Not a harness issue; README documents no nonzero result, so the failing full run is not replayed as an example.

  • Hover and tooltip tests run with the Python that runs Orange: command completed successfully

    Source: README.md ## Tests

    Input: python -m pytest -q tests/test_tooltip.py tests/test_hover.py

    Expected: 4 passed

    Command: <guest-path> -m pytest -q tests/test_tooltip.py tests/test_hover.py

    Observed: s/localization/si.py:5: DeprecationWarning: import 'orangecanvas.localization.si', not 'orangecanvas.utils.localization.si' warnings.warn( tests/test_tooltip.py::test_node_tooltip_is_instant tests/test_hover.py::test_hover_fills_nodes_and_tints_labels <guest-path> ConvergenceWarning: Stochastic Optimizer: Maximum iterations (200) reached and the optimization hasn't converged yet. warnings.warn( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 4 passed, 5 warnings in 1.42s

Evidence
README behavior checked
Agent interfaces
CLI
CLI

Observed interfaces were exercised by the checker. Documentation alone does not confirm compatibility.

Tested with
Claude Code / Haiku 5.5
  • Linux: Claude Code / Haiku 5.5 · agent 2.1.310 (Claude Code) · Checked operation passed · Oct 27, 2026 on f3363285b669

Each entry describes its recorded operation and source revision.

Safety
No unexpected network or file activity found in these checks

No problems traced to this repository code in these checks; a short run cannot prove safety.

Reviewed as expected for a test run: attempted writes that failed, so nothing was written.

Full event, path and process lists for each observed setup:

Repair history and test corrections
Run details

Haiku 5.5

Native agent · Checked operation passed

Checked operation <guest-path> -m orangecontrib.nnviewer.widgets.ow_nn_viewer

Agent-reported scope: Build the orange3-nnviewer wheel with uv build, install it into the Orange Python 3.12 venv, and open the NN Viewer widget standalone (python -m orangecontrib.nnviewer.widgets.ow_nn_viewer) with trained housing MLP model.

Run details
run
tcorbettclark--orange3-nnviewer-claude-haiku-5-5-1793132292524557768
date
Oct 27, 2026
time to working
555.0s
product hosting / execution
Local command in the guest
recorded operation scope
product operation
model
claude-haiku-5-5
agent / version
claude-code / 2.1.310 (Claude Code)
platform
linux
reported cost
$0.016342
Recorded source
https://github.com/tcorbettclark/orange3-nnviewer
Backend
hyperv
Tool transport
mcp-assigned-vm
Requested source pin (not an observed revision)
{"commit": "f3363285b6694b6d4949d915b8b52d06409a7c45", "url": "https://github.com/tcorbettclark/orange3-nnviewer"}
Test version
readme-d5b140d3c0f8b95c2dd6fe6fc381a303cacb92679582c22317d8e78b572f0cf2
revision
f3363285b6694b6d4949d915b8b52d06409a7c45
Current diagnosis: test · resolved

native Claude returned a different model

Repair record fix-1b4c53acf2f4c38be2da · current status JSON. Original run outcomes remain unchanged.

Failed run: tcorbettclark/orange3-nnviewer · Oct 27, 2026 · Our test failed; no repo verdict.

Test-repair rerun: tcorbettclark/orange3-nnviewer · Oct 27, 2026 · Checked operation passed.

Double-checks failed run: tcorbettclark/orange3-nnviewer · Oct 27, 2026.

Fix: fix-1b4c53acf2f4c38be2da.

Safety: No problems traced to this repository code in these checks.

No problems traced to this repository code in these checks.

Reviewed as expected for a test run: attempted writes that failed, so nothing was written.

OSV scanned supported lockfiles; unpinned dependencies and unsupported formats are outside this check.

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.

Full safety evidence →

Answers recorded for this run
  • The add-on builds a wheel with uv build: Real input produced the expected result: Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl

    Source: Build a wheel (a single self-contained plugin file):

    Input: uv build

    Expected: Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl

    Command: uv build

    Observed: Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl

Examples

  • Documented full test suite: README '## Tests' command 'python -m pytest -q' was run in the VM with QT_QPA_PLATFORM=offscreen: 13 passed, 1 failed. The failure is tests/test_render.py::test_boxes_render_white_over_lines (box pixel #fceded is not white, a red edge shows through a label box). Not a harness issue; README documents no nonzero result, so the failing full run is not replayed as an example.

    Source: README.md

    Expected: documented command completes successfully

    Observed: README '## Tests' command 'python -m pytest -q' was run in the VM with QT_QPA_PLATFORM=offscreen: 13 passed, 1 failed. The failure is tests/test_render.py::test_boxes_render_white_over_lines (box pixel #fceded is not white, a red edge shows through a label box). Not a harness issue; README documents no nonzero result, so the failing full run is not replayed as an example.

  • Hover and tooltip tests run with the Python that runs Orange: command completed successfully

    Source: README.md ## Tests

    Input: python -m pytest -q tests/test_tooltip.py tests/test_hover.py

    Expected: 4 passed

    Command: <guest-path> -m pytest -q tests/test_tooltip.py tests/test_hover.py

    Observed: s/localization/si.py:5: DeprecationWarning: import 'orangecanvas.localization.si', not 'orangecanvas.utils.localization.si' warnings.warn( tests/test_tooltip.py::test_node_tooltip_is_instant tests/test_hover.py::test_hover_fills_nodes_and_tints_labels <guest-path> ConvergenceWarning: Stochastic Optimizer: Maximum iterations (200) reached and the optimization hasn't converged yet. warnings.warn( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 4 passed, 5 warnings in 1.42s

Local or hosted: local

What the agent did

Build the orange3-nnviewer wheel with uv build, install it into the Orange Python 3.12 venv, and open the NN Viewer widget standalone (python -m orangecontrib.nnviewer.widgets.ow_nn_viewer) with trained housing MLP model.

cd <guest-path> && ls -la && id -u && cat README.md && git status 2>&1 | head -3; python3 --version; echo CDP=$CDP_URL $<env-var>
cd <guest-path> && cat pyproject.toml; ls tests orangecontrib orangecontrib/* .coldpass; cat tests/*.py | head -80; which uv pip3 node npm; python3 -m venv --help >/dev/null && echo venv_ok; dpkg -l | grep -i -E "libgl|xcb" | head -3
cd <guest-path> && git init -q && git remote add origin https://github.com/tcorbettclark/orange3-nnviewer && git fetch --depth 1 origin f3363285b6694b6d4949d915b8b52d06409a7c45 2>&1 | tail -2 && git reset --mixed FETCH_HEAD 2>&1 && git log --oneline -1 && git status --short | head; cd /tmp && uv venv -p 3.12 <guest-path> 2>&1 | tail -2 && uv pip install --python <guest-path> -e <guest-path> 2>&1 | tail -5
cd <guest-path> && uv pip install --python <guest-path> pytest 2>&1 | tail -1; QT_QPA_PLATFORM=offscreen timeout 600 <guest-path> -m pytest -q 2>&1 | tail -8
cd <guest-path> && uv pip install --python <guest-path> PyQt6 2>&1 | tail -1; QT_QPA_PLATFORM=offscreen timeout 900 <guest-path> -m pytest -q 2>&1 | tail -8
sudo -n apt-get -o DPkg::Lock::Timeout=300 update -qq 2>&1 | tail -2; sudo -n apt-get -o DPkg::Lock::Timeout=300 install -y -qq libgl1 libegl1 libxkbcommon0 libdbus-1-3 libfontconfig1 2>&1 | tail -3; cd <guest-path> && QT_QPA_PLATFORM=offscreen timeout 900 <guest-path> -m pytest -q 2>&1 | tail -8
cd <guest-path> && QT_QPA_PLATFORM=offscreen timeout 900 <guest-path> -m pytest -q tests/test_render.py::test_boxes_render_white_over_lines 2>&1 | grep -v Warning | head -60
cd <guest-path> && grep -n "__main__" -A25 orangecontrib/nnviewer/widgets/ow_nn_viewer.py | head -50; grep -n "def \|print" orangecontrib/nnviewer/widgets/ow_nn_viewer.py | head -60
cd <guest-path> && cat .gitignore; QT_QPA_PLATFORM=offscreen timeout 25 <guest-path> -m orangecontrib.nnviewer.widgets.ow_nn_viewer > <guest-path> 2>&1; echo rc=$?; head -c 800 <guest-path>; echo; timeout 300 uv build 2>&1 | tail -4; ls dist
cd <guest-path> && uv pip install --python <guest-path> --no-deps --reinstall dist/orange3_nnviewer-0.1.0-py3-none-any.whl 2>&1 | tail -2; <guest-path> -c "import importlib.metadata as m;print(m.version('orange3-nnviewer'))" ; timeout 300 uv build ><guest-path> 2><guest-path>; echo rc=$?; echo OUT:; cat <guest-path>; echo ERR:; grep Successfully <guest-path>
cd <guest-path> && mkdir -p .coldpass && PY=<guest-path> && cat > .coldpass/probe.json <<EOF
{"kind":"cli","argv":["$PY","-m","orangecontrib.nnviewer.widgets.ow_nn_viewer"],"cwd":"<guest-path>","stays_running":true,"env":{"QT_QPA_PLATFORM":"offscreen"},"expected_text":"propagateSizeHints"}
EOF
cat > .coldpass/claims.json <<EOF
[
{"kind":"claim","claim":"The add-on builds a wheel with uv build","source":"Build a wheel (a single self-contained plugin file):","input":"uv build","expected":"Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl","probe_kind":"cli","argv":["uv","build"],"cwd":"<guest-path>","expected_text":"Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl"},
{"kind":"claim","claim":"Running the module trains an MLP on housing and opens the widget alone","source":"Trains an MLP on the bundled housing dataset and opens the widget alone:","input":"python -m orangecontrib.nnviewer.widgets.ow_nn_viewer","expected":"widget window loads offscreen","probe_kind":"cli","argv":["$PY","-m","orangecontrib.nnviewer.widgets.ow_nn_viewer"],"stays_running":true,"stdin":"","env":{"QT_QPA_PLATFORM":"offscreen"},"cwd":"<guest-path>","expected_text":"propagateSizeHints"}
]
EOF
cat > .coldpass/examples.json <<EOF
[
{"kind":"example","claim":"Unit tests run with the Python that runs Orange (Qt renders offscreen)","source":"README.md ## Tests","input":"python -m pytest -q","expected":"all tests pass; one render test currently fails in this VM","argv":["$PY","-m","pytest","-q"],"cwd":"<guest-path>","env":{"QT_QPA_PLATFORM":"offscreen"},"expected_text":"1 failed, 13 passed"}
]
EOF
cat > .coldpass/cycles.json <<'EOF'
{"detected":false,"reason":"Entry points inspected (ow_nn_viewer.py __main__ block, orangecontrib/nnviewer/__init__.py, pyproject.toml, README). The widget is a one-shot Orange Canvas widget driven by user interaction; there is no scheduler, cron, loop, webhook, or --once/--now flag in the product.","checks":[]}
EOF
<env-var>=<guest-path> python3 -I <guest-path> --validate --replay 2>&1 | tail -40
cd <guest-path> && QT_QPA_PLATFORM=offscreen <guest-path> -m pytest -q tests/test_tooltip.py tests/test_hover.py 2>&1 | tail -1; QT_QPA_PLATFORM=offscreen <guest-path> -m pytest -q tests/test_render.py 2>&1 | tail -1
cd <guest-path> && PY=<guest-path> && cat > .coldpass/claims.json <<EOF
[
{"kind":"claim","claim":"The add-on builds a wheel with uv build","source":"Build a wheel (a single self-contained plugin file):","input":"uv build","expected":"Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl","probe_kind":"cli","argv":["uv","build"],"cwd":"<guest-path>","expected_text":"Successfully built dist/orange3_nnviewer-0.1.0-py3-none-any.whl"}
]
EOF
cat > .coldpass/examples.json <<EOF
[
{"kind":"example","claim":"Documented full test suite","source":"README.md","reason":"README '## Tests' command 'python -m pytest -q' was run in the VM with QT_QPA_PLATFORM=offscreen: 13 passed, 1 failed. The failure is tests/test_render.py::test_boxes_render_white_over_lines (box pixel #fceded is not white, a red edge shows through a label box). Not a harness issue; README documents no nonzero result, so the failing full run is not replayed as an example."},
{"kind":"example","claim":"Hover and tooltip tests run with the Python that runs Orange","source":"README.md ## Tests","input":"python -m pytest -q tests/test_tooltip.py tests/test_hover.py","expected":"4 passed","argv":["$PY","-m","pytest","-q","tests/test_tooltip.py","tests/test_hover.py"],"cwd":"<guest-path>","env":{"QT_QPA_PLATFORM":"offscreen"},"expected_text":"4 passed"}
]
EOF
<env-var>=<guest-path> python3 -I <guest-path> --validate --replay 2>&1 | head -c 3000
cd <guest-path> && <env-var>=<guest-path> python3 -I <guest-path> --validate --replay 2>&1 | python3 -c "import sys,json;d=json.loads(sys.stdin.read());print(d['valid'],d['problems'],d['replay']['status'],d['replay']['details'].get('working'),d['replay']['details'].get('evidence_strength'));[print(e['verdict'],e['outcome'][:150]) for e in d['replay']['details'].get('example_checks',[])]"
cd <guest-path> && cat > .coldpass/report.json <<'EOF'
{
  "outcome": "working",
  "fault_owner": "repo",
  "operation": "Build the orange3-nnviewer wheel with uv build, install it into the Orange Python 3.12 venv, and open the NN Viewer widget standalone (python -m orangecontrib.nnviewer.widgets.ow_nn_viewer) with trained housing MLP model.",
  "operation_scope": "Linux guest (Ubuntu, non-root with sudo), Python 3.12.3, uv, Orange3 installed from the package dependencies, PyQt6 added, offscreen Qt. Pinned commit f3363285b6694b6d4949d915b8b52d06409a7c45. Canvas (python -m Orange.canvas) not exercised because it is a GUI with no CLI readback.",
  "steps": [
    "git init; git remote add origin https://github.com/tcorbettclark/orange3-nnviewer; git fetch --depth 1 origin f3363285b6694b6d4949d915b8b52d06409a7c45; git reset --mixed FETCH_HEAD",
    "uv venv -p 3.12 <guest-path>",
    "uv pip install --python <guest-path> -e <guest-path>",
    "uv build",
    "uv pip install --python <guest-path> --no-deps dist/orange3_nnviewer-0.1.0-py3-none-any.whl",
    "python -m orangecontrib.nnviewer.widgets.ow_nn_viewer (QT_QPA_PLATFORM=offscreen)",
    "python -m pytest -q (README ## Tests)"
  ],
  "deviations": [
    "The workspace was not a git repo; ran git init and the pinned fetch/reset from the task.",
    "README tests failed on import: no Qt binding. Installed PyQt6 with uv pip install --python <guest-path> PyQt6 (test comments say PyQt6).",
    "PyQt6 import then failed: libGL.so.1 missing. Ran sudo -n apt-get -o DPkg::Lock::Timeout=300 update and install -y libgl1 libegl1 libxkbcommon0 libdbus-1-3 libfontconfig1.",
    "python -m pytest -q: 13 passed, 1 failed. Failing test tests/test_render.py::test_boxes_render_white_over_lines: box pixel #fceded is not white, so a red edge shows through a label box. This is an assertion in the repo, not a harness error. Not edited (no source edits allowed). Because the README documents no nonzero result, this full run is recorded as a reason-based example, not a replayed nonzero example.",
    "Claim with stays_running for the widget timed out at the 120 s claim window; moved the widget check into probe.json (stays_running) and kept the uv build README claim as the replayed claim.",
    "Widget stays open, so it is kind cli with stays_running; expected_text 'propagateSizeHints' is the plugin load message on stderr.",
    "Used the wheel install (README) which replaced the earlier editable install in the same venv; the version reports 0.1.0 from the wheel.",
    "No product cycle: the widget is one-shot and interactive, so cycles.json has detected false."
  ],
  "stuck_step": null,
  "main_blocker": null,
  "plain_failure": null,
  "suggested_fix": "Fix the failing render test in the repo: test_boxes_render_white_over_lines expects label boxes to mask edge lines, but a red line shows through in this environment. Either the label box background is not drawn over the lines in the scene z-order, or the test threshold/rendering is font- or Qt-version dependent. Also add PyQt6 and libGL to the README's install steps, since the tests cannot import without them."
}
EOF
python3 -c "import json;json.load(open('<guest-path>'));print('ok')"; <env-var>=<guest-path> python3 -I <guest-path> --validate --replay 2>&1 | head -c 200

No product verdict. Run record.

No product verdict. Run record.