this derivation will be built: /nix/store/kxpxxv4aia3ybbclx53db3zm03i16n0n-pymol-cli-0.1.0.drv this path will be fetched (16.2 KiB download, 66.9 KiB unpacked): /nix/store/7gg2jzncxb747nxkxi8nmw7v8912xbli-python3.14-ruff-0.16.3 building '/nix/store/kxpxxv4aia3ybbclx53db3zm03i16n0n-pymol-cli-0.1.0.drv' pymol-cli-0.1.0> Sourcing python-remove-tests-dir-hook pymol-cli-0.1.0> Sourcing python-catch-conflicts-hook.sh pymol-cli-0.1.0> Sourcing python-remove-bin-bytecode-hook.sh pymol-cli-0.1.0> Sourcing pypa-build-hook pymol-cli-0.1.0> Using pypaBuildPhase pymol-cli-0.1.0> Sourcing python-runtime-deps-check-hook pymol-cli-0.1.0> Using pythonRuntimeDepsCheckHook pymol-cli-0.1.0> Sourcing pypa-install-hook pymol-cli-0.1.0> Using pypaInstallPhase pymol-cli-0.1.0> Sourcing python-imports-check-hook.sh pymol-cli-0.1.0> Using pythonImportsCheckPhase pymol-cli-0.1.0> Sourcing python-namespaces-hook pymol-cli-0.1.0> Sourcing python-catch-conflicts-hook.sh pymol-cli-0.1.0> Sourcing pytest-check-hook pymol-cli-0.1.0> Using pytestCheckPhase pymol-cli-0.1.0> Using checkPhaseThreadLimitHook pymol-cli-0.1.0> Running phase: unpackPhase pymol-cli-0.1.0> unpacking source archive /nix/store/r674dpqpajrlynm886vcapg2x8fmzrln-pymol-cli pymol-cli-0.1.0> source root is pymol-cli pymol-cli-0.1.0> setting SOURCE_DATE_EPOCH to timestamp 315619200 of file "pymol-cli/tests/test_rpc_session.py" pymol-cli-0.1.0> Running phase: patchPhase pymol-cli-0.1.0> Running phase: updateAutotoolsGnuConfigScriptsPhase pymol-cli-0.1.0> Running phase: configurePhase pymol-cli-0.1.0> no configure script, doing nothing pymol-cli-0.1.0> Running phase: buildPhase pymol-cli-0.1.0> Executing pypaBuildPhase pymol-cli-0.1.0> Creating a wheel... pymol-cli-0.1.0> pypa build flags: --no-isolation --outdir dist/ --wheel pymol-cli-0.1.0> * Getting build dependencies for wheel... pymol-cli-0.1.0> * Building wheel... pymol-cli-0.1.0> Successfully built pymol_cli-0.1.0-py3-none-any.whl pymol-cli-0.1.0> Finished creating a wheel... pymol-cli-0.1.0> Finished executing pypaBuildPhase pymol-cli-0.1.0> Running phase: pythonRuntimeDepsCheckHook pymol-cli-0.1.0> Executing pythonRuntimeDepsCheck pymol-cli-0.1.0> Checking runtime dependencies for pymol_cli-0.1.0-py3-none-any.whl pymol-cli-0.1.0> Finished executing pythonRuntimeDepsCheck pymol-cli-0.1.0> Running phase: installPhase pymol-cli-0.1.0> Executing pypaInstallPhase pymol-cli-0.1.0> Successfully installed pymol_cli-0.1.0-py3-none-any.whl pymol-cli-0.1.0> Finished executing pypaInstallPhase pymol-cli-0.1.0> Running phase: pythonOutputDistPhase pymol-cli-0.1.0> Executing pythonOutputDistPhase pymol-cli-0.1.0> Finished executing pythonOutputDistPhase pymol-cli-0.1.0> Running phase: fixupPhase pymol-cli-0.1.0> shrinking RPATHs of ELF executables and libraries in /nix/store/a0vnk065rfbkiwh0yd1l9s48lk6bs56n-pymol-cli-0.1.0 pymol-cli-0.1.0> checking for references to /build/ in /nix/store/a0vnk065rfbkiwh0yd1l9s48lk6bs56n-pymol-cli-0.1.0... pymol-cli-0.1.0> patching script interpreter paths in /nix/store/a0vnk065rfbkiwh0yd1l9s48lk6bs56n-pymol-cli-0.1.0 pymol-cli-0.1.0> stripping (with command strip and flags -S -p) in /nix/store/a0vnk065rfbkiwh0yd1l9s48lk6bs56n-pymol-cli-0.1.0/lib /nix/store/a0vnk065rfbkiwh0yd1l9s48lk6bs56n-pymol-cli-0.1.0/bin pymol-cli-0.1.0> shrinking RPATHs of ELF executables and libraries in /nix/store/dz32kg6p23m27frs6x5bs6ym1k77h0yl-pymol-cli-0.1.0-dist pymol-cli-0.1.0> checking for references to /build/ in /nix/store/dz32kg6p23m27frs6x5bs6ym1k77h0yl-pymol-cli-0.1.0-dist... pymol-cli-0.1.0> patching script interpreter paths in /nix/store/dz32kg6p23m27frs6x5bs6ym1k77h0yl-pymol-cli-0.1.0-dist pymol-cli-0.1.0> Rewriting #!/nix/store/3n4qphl9s728sz8frmpqqrv9b1m87g68-python3-3.14.7/bin/python3.14 to #!/nix/store/3n4qphl9s728sz8frmpqqrv9b1m87g68-python3-3.14.7 pymol-cli-0.1.0> wrapping `/nix/store/a0vnk065rfbkiwh0yd1l9s48lk6bs56n-pymol-cli-0.1.0/bin/pymol-cli'... pymol-cli-0.1.0> Rewriting #!/nix/store/3n4qphl9s728sz8frmpqqrv9b1m87g68-python3-3.14.7/bin/python3.14 to #!/nix/store/3n4qphl9s728sz8frmpqqrv9b1m87g68-python3-3.14.7 pymol-cli-0.1.0> wrapping `/nix/store/a0vnk065rfbkiwh0yd1l9s48lk6bs56n-pymol-cli-0.1.0/bin/pymol-engine'... pymol-cli-0.1.0> Rewriting #!/nix/store/3n4qphl9s728sz8frmpqqrv9b1m87g68-python3-3.14.7/bin/python3.14 to #!/nix/store/3n4qphl9s728sz8frmpqqrv9b1m87g68-python3-3.14.7 pymol-cli-0.1.0> wrapping `/nix/store/a0vnk065rfbkiwh0yd1l9s48lk6bs56n-pymol-cli-0.1.0/bin/pymol-mcp'... pymol-cli-0.1.0> Executing pythonRemoveTestsDir pymol-cli-0.1.0> Finished executing pythonRemoveTestsDir pymol-cli-0.1.0> Running phase: installCheckPhase pymol-cli-0.1.0> setting known thread variables to default: 1 pymol-cli-0.1.0> OMP_NUM_THREADS=1 OPENBLAS_NUM_THREADS=1 MKL_NUM_THREADS=1 BLIS_NUM_THREADS=1 VECLIB_MAXIMUM_THREADS=1 NUMBA_NUM_THREADS=1 NUMEXPR_NUM_THREADS=1 pymol-cli-0.1.0> no Makefile or custom installCheckPhase, doing nothing pymol-cli-0.1.0> Running phase: pythonCatchConflictsPhase pymol-cli-0.1.0> Running phase: pythonRemoveBinBytecodePhase pymol-cli-0.1.0> Running phase: pythonImportsCheckPhase pymol-cli-0.1.0> Executing pythonImportsCheckPhase pymol-cli-0.1.0> Check whether the following modules can be imported: pymol_cli pymol-cli-0.1.0> Running phase: pytestCheckPhase pymol-cli-0.1.0> Executing pytestCheckPhase pymol-cli-0.1.0> 67 files already formatted pymol-cli-0.1.0> All checks passed! pymol-cli-0.1.0> Success: no issues found in 66 source files pymol-cli-0.1.0> setting known thread variables to default: 1 pymol-cli-0.1.0> OMP_NUM_THREADS=1 OPENBLAS_NUM_THREADS=1 MKL_NUM_THREADS=1 BLIS_NUM_THREADS=1 VECLIB_MAXIMUM_THREADS=1 NUMBA_NUM_THREADS=1 NUMEXPR_NUM_THREADS=1 pymol-cli-0.1.0> pytest flags: -m pytest pymol-cli-0.1.0> ============================= test session starts ============================== pymol-cli-0.1.0> platform linux -- Python 3.14.7, pytest-9.1.1, pluggy-1.6.0 pymol-cli-0.1.0> rootdir: /build/pymol-cli pymol-cli-0.1.0> configfile: pyproject.toml pymol-cli-0.1.0> collected 183 items pymol-cli-0.1.0> pymol-cli-0.1.0> tests/test_cli_domain.py .. [ 1%] pymol-cli-0.1.0> tests/test_cli_engine.py ... [ 2%] pymol-cli-0.1.0> tests/test_cli_gui_command.py . [ 3%] pymol-cli-0.1.0> tests/test_cli_hardening.py ..................... [ 14%] pymol-cli-0.1.0> tests/test_engine_current_process.py ........... [ 20%] pymol-cli-0.1.0> tests/test_engine_hardening.py ......................................... [ 43%] pymol-cli-0.1.0> ............. [ 50%] pymol-cli-0.1.0> tests/test_engine_imports.py . [ 50%] pymol-cli-0.1.0> tests/test_lifecycle_current_process_serve.py . [ 51%] pymol-cli-0.1.0> tests/test_lifecycle_gui.py ........ [ 55%] pymol-cli-0.1.0> tests/test_lifecycle_lock.py . [ 56%] pymol-cli-0.1.0> tests/test_lifecycle_paths.py . [ 56%] pymol-cli-0.1.0> tests/test_lifecycle_process.py .... [ 59%] pymol-cli-0.1.0> tests/test_main.py ...... [ 62%] pymol-cli-0.1.0> tests/test_mcp.py ........................ [ 75%] pymol-cli-0.1.0> tests/test_mcp_imports.py . [ 75%] pymol-cli-0.1.0> tests/test_mcp_real_integration.py . [ 76%] pymol-cli-0.1.0> tests/test_rpc_client_server.py ............... [ 84%] pymol-cli-0.1.0> tests/test_rpc_client_timeouts.py .... [ 86%] pymol-cli-0.1.0> tests/test_rpc_descriptor.py ..s... [ 90%] pymol-cli-0.1.0> tests/test_rpc_descriptor_client.py .. [ 91%] pymol-cli-0.1.0> tests/test_rpc_embedded_integration.py ... [ 92%] pymol-cli-0.1.0> tests/test_rpc_framing.py ....... [ 96%] pymol-cli-0.1.0> tests/test_rpc_imports.py . [ 97%] pymol-cli-0.1.0> tests/test_rpc_session.py ..... [100%] pymol-cli-0.1.0> pymol-cli-0.1.0> ======================== 182 passed, 1 skipped in 6.68s ======================== pymol-cli-0.1.0> Finished executing pytestCheckPhase pymol-cli-0.1.0> Running phase: pytestcachePhase pymol-cli-0.1.0> Running phase: pytestRemoveBytecodePhase post-build step Route build to niks3: ok Pushing mulatta/research-skills to https://niks3.mulatta.io time=2026-08-23T19:14:49.393+09:00 level=INFO msg="Uploading 1 paths to niks3.mulatta.io (153 already cached)" time=2026-08-23T19:14:49.393+09:00 level=INFO msg="Uploading a0vnk065rfbkiwh0yd1l9s48lk6bs56n-pymol-cli-0.1.0 (1.2MB)" time=2026-08-23T19:14:50.349+09:00 level=INFO msg="Uploading 1 narinfos" time=2026-08-23T19:14:50.723+09:00 level=INFO msg="Upload complete. (1.438s)"