{"installed": "/Users/alexhoman-russell/Dev/computenet-hardening-20261022-ILclIz4M/activation-engineering/runtime-linux-source", "files": 835, "activated": false, "keys_created": false, "dependency_installation": false}
Looking in links: /wheels
Processing /wheels/annotated_doc-0.0.4-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 1))
Processing /wheels/annotated_types-0.7.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 2))
Processing /wheels/anyio-4.15.1-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 3))
Processing /wheels/certifi-2026.10.23-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 4))
Processing /wheels/cffi-2.0.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 5))
Processing /wheels/charset_normalizer-3.4.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 6))
Processing /wheels/click-8.3.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 7))
Processing /wheels/cryptography-50.0.2-cp311-abi3-manylinux_2_28_x86_64.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 8))
Processing /wheels/exceptiongroup-1.3.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 9))
Processing /wheels/fastapi-0.162.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 10))
Processing /wheels/h11-0.16.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 11))
Processing /wheels/httpcore-1.0.9-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 12))
Processing /wheels/httpx-0.28.1-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 13))
Processing /wheels/idna-3.20-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 14))
Processing /wheels/iniconfig-2.3.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 15))
Processing /wheels/opentelemetry_api-1.45.1-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 16))
Processing /wheels/packaging-25.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 17))
Processing /wheels/pluggy-1.6.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 18))
Processing /wheels/pycparser-3.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 19))
Processing /wheels/pydantic-2.11.7-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 20))
Processing /wheels/pydantic_core-2.33.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 21))
Processing /wheels/pygments-2.21.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 22))
Processing /wheels/pytest-9.1.1-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 23))
Processing /wheels/requests-2.34.2-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 24))
Processing /wheels/sniffio-1.3.1-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 25))
Processing /wheels/starlette-1.3.1-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 26))
Processing /wheels/tomli-2.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 27))
Processing /wheels/typing_extensions-4.16.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 28))
Processing /wheels/typing_inspection-0.4.2-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 29))
Processing /wheels/urllib3-2.8.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 30))
Processing /wheels/uvicorn-0.40.0-py3-none-any.whl (from -r candidate/requirements-hashed-linux-amd64-py312.txt (line 31))
Installing collected packages: urllib3, typing-extensions, tomli, sniffio, pygments, pycparser, pluggy, packaging, iniconfig, idna, h11, click, charset-normalizer, certifi, annotated-types, annotated-doc, uvicorn, typing-inspection, requests, pytest, pydantic-core, opentelemetry-api, httpcore, exceptiongroup, cffi, anyio, starlette, pydantic, httpx, cryptography, fastapi
Successfully installed annotated-doc-0.0.4 annotated-types-0.7.0 anyio-4.15.1 certifi-2026.10.23 cffi-2.0.0 charset-normalizer-3.4.3 click-8.3.0 cryptography-50.0.2 exceptiongroup-1.3.0 fastapi-0.162.0 h11-0.16.0 httpcore-1.0.9 httpx-0.28.1 idna-3.20 iniconfig-2.3.0 opentelemetry-api-1.45.1 packaging-25.0 pluggy-1.6.0 pycparser-3.0 pydantic-2.11.7 pydantic-core-2.33.2 pygments-2.21.0 pytest-9.1.1 requests-2.34.2 sniffio-1.3.1 starlette-1.3.1 tomli-2.4.0 typing-extensions-4.16.0 typing-inspection-0.4.2 urllib3-2.8.0 uvicorn-0.40.0
.......................................                                  [100%]
=============================== warnings summary ===============================
../tmp/adapter-env/lib/python3.12/site-packages/fastapi/testclient.py:1
  /tmp/adapter-env/lib/python3.12/site-packages/fastapi/testclient.py:1: StarletteDeprecationWarning: Using `httpx` with `starlette.testclient` is deprecated; install `httpx2` instead.
    from starlette.testclient import TestClient as TestClient  # noqa

../tmp/adapter-env/lib/python3.12/site-packages/starlette/testclient.py:53
  /tmp/adapter-env/lib/python3.12/site-packages/starlette/testclient.py:53: DeprecationWarning: The anyio.abc.BlockingPortal alias is deprecated, use anyio.from_thread.BlockingPortal instead.
    _PortalFactoryType = Callable[[], AbstractContextManager[anyio.abc.BlockingPortal]]

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
39 passed, 2 warnings in 1.09s
ADAPTER_LINUX_TEST_XML=<?xml version="1.0" encoding="utf-8"?><testsuites name="pytest tests"><testsuite name="pytest" errors="0" failures="0" skipped="0" tests="39" time="1.092" timestamp="2026-11-08T08:36:58.502394+00:00" hostname="62d04b0b9e19"><testcase classname="activation-engineering.tests.test_adapter" name="test_observer_serves_and_reopens_without_signer_or_canonical_writes" file="activation-engineering/tests/test_adapter.py" line="34" time="0.061" /><testcase classname="activation-engineering.tests.test_adapter" name="test_wan_endpoint_restrictions[http://8.8.8.8:19092]" file="activation-engineering/tests/test_adapter.py" line="48" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_wan_endpoint_restrictions[https://localhost:19092]" file="activation-engineering/tests/test_adapter.py" line="48" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_wan_endpoint_restrictions[https://169.254.169.254:19092]" file="activation-engineering/tests/test_adapter.py" line="48" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_wan_endpoint_restrictions[https://10.0.0.1:19092]" file="activation-engineering/tests/test_adapter.py" line="48" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_wan_endpoint_restrictions[https://[::1]:19092]" file="activation-engineering/tests/test_adapter.py" line="48" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_wan_endpoint_restrictions[https://8.8.8.8:22]" file="activation-engineering/tests/test_adapter.py" line="48" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_wan_endpoint_restrictions[https://8.8.8.8:19092/path]" file="activation-engineering/tests/test_adapter.py" line="48" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_wan_endpoint_restrictions[https://user@8.8.8.8:19092]" file="activation-engineering/tests/test_adapter.py" line="48" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_global_endpoint_validation_makes_no_connection" file="activation-engineering/tests/test_adapter.py" line="53" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[missing]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.011" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[review]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.011" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[operator]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.011" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[expiry]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.011" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[config]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.011" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[source]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.011" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[findings]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.011" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[issuance]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.016" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[budget]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.014" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[scope]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.013" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_consent_fail_closed[same-key]" file="activation-engineering/tests/test_adapter.py" line="58" time="0.015" /><testcase classname="activation-engineering.tests.test_adapter" name="test_synthetic_active_permit_only_validates_consent_no_execution" file="activation-engineering/tests/test_adapter.py" line="75" time="0.014" /><testcase classname="activation-engineering.tests.test_adapter" name="test_read_only_store_rejects_corruption_and_duplicate_json" file="activation-engineering/tests/test_adapter.py" line="82" time="0.013" /><testcase classname="activation-engineering.tests.test_adapter" name="test_registry_checks_signed_global_scope_and_recovers" file="activation-engineering/tests/test_adapter.py" line="90" time="0.038" /><testcase classname="activation-engineering.tests.test_adapter" name="test_legacy_writer_gate_never_stops_services" file="activation-engineering/tests/test_adapter.py" line="101" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_active_permit_cannot_smuggle_payments_through_consensus_or_sync" file="activation-engineering/tests/test_adapter.py" line="112" time="0.021" /><testcase classname="activation-engineering.tests.test_adapter" name="test_configured_observer_ignores_nonexistent_signing_key_and_reopens" file="activation-engineering/tests/test_adapter.py" line="120" time="0.058" /><testcase classname="activation-engineering.tests.test_adapter" name="test_registry_metadata_write_interruption_preserves_previous_state" file="activation-engineering/tests/test_adapter.py" line="132" time="0.013" /><testcase classname="activation-engineering.tests.test_adapter" name="test_exact_public_signed_canary_validates_budget_without_sending" file="activation-engineering/tests/test_adapter.py" line="146" time="0.019" /><testcase classname="activation-engineering.tests.test_adapter" name="test_checkpoint_guard_requires_fresh_independent_pin" file="activation-engineering/tests/test_adapter.py" line="164" time="0.010" /><testcase classname="activation-engineering.tests.test_adapter" name="test_persistent_writer_fence_accepts_only_stopped_and_masked" file="activation-engineering/tests/test_adapter.py" line="172" time="0.000" /><testcase classname="activation-engineering.tests.test_adapter" name="test_synthetic_permitted_active_factory_restarts_without_advancement" file="activation-engineering/tests/test_adapter.py" line="180" time="0.109" /><testcase classname="activation-engineering.tests.test_adapter" name="test_expired_metadata_cannot_permanently_fill_discovery_capacity" file="activation-engineering/tests/test_adapter.py" line="206" time="0.012" /><testcase classname="activation-engineering.tests.test_adapter" name="test_offline_canary_preparer_has_no_signing_or_payment_side_effect" file="activation-engineering/tests/test_adapter.py" line="215" time="0.018" /><testcase classname="activation-engineering.tests.test_adapter" name="test_operator_can_prepare_own_credentials_and_join_without_founder" file="activation-engineering/tests/test_adapter.py" line="226" time="0.041" /><testcase classname="activation-engineering.tests.test_adapter" name="test_reviewer_key_and_operator_key_cannot_be_same_even_for_valid_signatures" file="activation-engineering/tests/test_adapter.py" line="237" time="0.012" /><testcase classname="activation-engineering.tests.test_adapter" name="test_legacy_observer_validates_original_prefix_without_migration" file="activation-engineering/tests/test_adapter.py" line="242" time="0.011" /><testcase classname="activation-engineering.tests.test_adapter" name="test_retained_public_compute_receipt_can_be_verified_without_private_db_access" file="activation-engineering/tests/test_adapter.py" line="253" time="0.001" /><testcase classname="activation-engineering.tests.test_adapter" name="test_public_review_attestation_is_reusable_without_operator_admission_permission" file="activation-engineering/tests/test_adapter.py" line="261" time="0.012" /></testsuite></testsuites>
{
  "status": "PASS",
  "owned_children_cpu_seconds": 1.45562,
  "owned_child_peak_rss_bytes": 86716416,
  "graceful_shutdown_seconds": 3.147402251139283,
  "host_system": "linux",
  "python": "3.12.3",
  "subprocess_start_seconds": 0.6427622502669692,
  "crash_reopen_seconds": 0.5668203760869801,
  "tls_round_trip": {
    "samples": 12,
    "median_ms": 24.80599982663989,
    "p95_ms": 27.045208029448986,
    "mean_response_bytes": 470,
    "scope": "actual loopback TLS1.3 plus full application validation; not WAN latency"
  },
  "mutation_routes_http": {
    "/consensus/messages": 403,
    "/chain/sync": 403,
    "/tx/submit": 403,
    "/validators/resource-proof": 403,
    "/validators/announce": 403,
    "/work/receipts": 403
  },
  "health": {
    "height": 10,
    "production_enabled": false,
    "observer": true,
    "signer_available": false,
    "ledger_writes": false,
    "waiting_for_quorum": false,
    "canonical_source_format": "validated-native-snapshot",
    "adapter_mode": "observer-rehearsal",
    "head_hash": "c27a66c21586a94d64ccd25134f7e7fa4b03abd29fac2fdeac102b92fca65934",
    "ledger_writes_enabled": false,
    "payments_enabled": false,
    "issuance_enabled": false
  },
  "canonical_sha256_before": "cb9415e27162e951b15f78c3b57a4162d85235bd40408bafbb20da445df9aca0",
  "canonical_sha256_after": "cb9415e27162e951b15f78c3b57a4162d85235bd40408bafbb20da445df9aca0",
  "existing_signed_synthetic_fixture_records": 10,
  "existing_synthetic_work_payments": 4,
  "canonical_mutations": 0,
  "real_payments": 0,
  "issuance": 0,
  "consensus_key_loaded": false,
  "registry_created": true,
  "base_source_unchanged": true,
  "production_access": false
}
ADAPTER_LINUX_REHEARSAL={
  "status": "PASS",
  "owned_children_cpu_seconds": 1.45562,
  "owned_child_peak_rss_bytes": 86716416,
  "graceful_shutdown_seconds": 3.147402251139283,
  "host_system": "linux",
  "python": "3.12.3",
  "subprocess_start_seconds": 0.6427622502669692,
  "crash_reopen_seconds": 0.5668203760869801,
  "tls_round_trip": {
    "samples": 12,
    "median_ms": 24.80599982663989,
    "p95_ms": 27.045208029448986,
    "mean_response_bytes": 470,
    "scope": "actual loopback TLS1.3 plus full application validation; not WAN latency"
  },
  "mutation_routes_http": {
    "/consensus/messages": 403,
    "/chain/sync": 403,
    "/tx/submit": 403,
    "/validators/resource-proof": 403,
    "/validators/announce": 403,
    "/work/receipts": 403
  },
  "health": {
    "height": 10,
    "production_enabled": false,
    "observer": true,
    "signer_available": false,
    "ledger_writes": false,
    "waiting_for_quorum": false,
    "canonical_source_format": "validated-native-snapshot",
    "adapter_mode": "observer-rehearsal",
    "head_hash": "c27a66c21586a94d64ccd25134f7e7fa4b03abd29fac2fdeac102b92fca65934",
    "ledger_writes_enabled": false,
    "payments_enabled": false,
    "issuance_enabled": false
  },
  "canonical_sha256_before": "cb9415e27162e951b15f78c3b57a4162d85235bd40408bafbb20da445df9aca0",
  "canonical_sha256_after": "cb9415e27162e951b15f78c3b57a4162d85235bd40408bafbb20da445df9aca0",
  "existing_signed_synthetic_fixture_records": 10,
  "existing_synthetic_work_payments": 4,
  "canonical_mutations": 0,
  "real_payments": 0,
  "issuance": 0,
  "consensus_key_loaded": false,
  "registry_created": true,
  "base_source_unchanged": true,
  "production_access": false
}

{
  "status": "PASS",
  "owned_children_cpu_seconds": 1.021907,
  "owned_child_peak_rss_bytes": 87007232,
  "graceful_shutdown_seconds": 3.220522542949766,
  "host_system": "linux",
  "python": "3.12.3",
  "subprocess_start_seconds": 0.5227099172770977,
  "crash_reopen_seconds": 0.5005270419642329,
  "tls_round_trip": {
    "samples": 12,
    "median_ms": 1.5374787617474794,
    "p95_ms": 2.764916978776455,
    "mean_response_bytes": 470,
    "scope": "actual loopback TLS1.3 plus full application validation; not WAN latency"
  },
  "mutation_routes_http": {
    "/consensus/messages": 403,
    "/chain/sync": 403,
    "/tx/submit": 403,
    "/validators/resource-proof": 403,
    "/validators/announce": 403,
    "/work/receipts": 403
  },
  "health": {
    "height": 8,
    "production_enabled": false,
    "observer": true,
    "signer_available": false,
    "ledger_writes": false,
    "waiting_for_quorum": false,
    "canonical_source_format": "protected-history-read-view",
    "adapter_mode": "observer-rehearsal",
    "head_hash": "ff990fee6c2da296b54e44ff8ae3b7bdc9ce8109aea05d15643c88ce019ea525",
    "ledger_writes_enabled": false,
    "payments_enabled": false,
    "issuance_enabled": false
  },
  "canonical_sha256_before": "1792063a583dfced98706b2f9643f822dfd87b19cefe96055ebd45bf60ba1de2",
  "canonical_sha256_after": "1792063a583dfced98706b2f9643f822dfd87b19cefe96055ebd45bf60ba1de2",
  "existing_signed_synthetic_fixture_records": 8,
  "existing_synthetic_work_payments": 4,
  "canonical_mutations": 0,
  "real_payments": 0,
  "issuance": 0,
  "consensus_key_loaded": false,
  "registry_created": true,
  "base_source_unchanged": true,
  "production_access": false
}
ADAPTER_LINUX_REHEARSAL={
  "status": "PASS",
  "owned_children_cpu_seconds": 1.021907,
  "owned_child_peak_rss_bytes": 87007232,
  "graceful_shutdown_seconds": 3.220522542949766,
  "host_system": "linux",
  "python": "3.12.3",
  "subprocess_start_seconds": 0.5227099172770977,
  "crash_reopen_seconds": 0.5005270419642329,
  "tls_round_trip": {
    "samples": 12,
    "median_ms": 1.5374787617474794,
    "p95_ms": 2.764916978776455,
    "mean_response_bytes": 470,
    "scope": "actual loopback TLS1.3 plus full application validation; not WAN latency"
  },
  "mutation_routes_http": {
    "/consensus/messages": 403,
    "/chain/sync": 403,
    "/tx/submit": 403,
    "/validators/resource-proof": 403,
    "/validators/announce": 403,
    "/work/receipts": 403
  },
  "health": {
    "height": 8,
    "production_enabled": false,
    "observer": true,
    "signer_available": false,
    "ledger_writes": false,
    "waiting_for_quorum": false,
    "canonical_source_format": "protected-history-read-view",
    "adapter_mode": "observer-rehearsal",
    "head_hash": "ff990fee6c2da296b54e44ff8ae3b7bdc9ce8109aea05d15643c88ce019ea525",
    "ledger_writes_enabled": false,
    "payments_enabled": false,
    "issuance_enabled": false
  },
  "canonical_sha256_before": "1792063a583dfced98706b2f9643f822dfd87b19cefe96055ebd45bf60ba1de2",
  "canonical_sha256_after": "1792063a583dfced98706b2f9643f822dfd87b19cefe96055ebd45bf60ba1de2",
  "existing_signed_synthetic_fixture_records": 8,
  "existing_synthetic_work_payments": 4,
  "canonical_mutations": 0,
  "real_payments": 0,
  "issuance": 0,
  "consensus_key_loaded": false,
  "registry_created": true,
  "base_source_unchanged": true,
  "production_access": false
}

Traceback (most recent call last):
  File "<string>", line 44, in <module>
NameError: name 'pathlib' is not defined. Did you mean: 'hashlib'? Or did you forget to import 'pathlib'?
Traceback (most recent call last):
  File "<stdin>", line 13, in <module>
  File "/usr/lib/python3.12/subprocess.py", line 571, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['/tmp/adapter-env/bin/python', '-B', '-c', '__file__=\'/work/activation-engineering/measure.py\'\n"""Bounded local physical-cost evidence, no monetary rate/security claims."""\nimport base64,hashlib,json,os,platform,resource,statistics,sys,tempfile,time,math\nfrom pathlib import Path\nR=Path(__file__).resolve().parents[1]\nsys.path[:0]=[str(R/\'activation-engineering\'),str(R),str(R/\'candidate\'),str(R/\'v1-integration/candidate\'),str(R/\'v1-integration/tests\'),str(R/\'tests\'),str(R/\'launch-programme/proposal\'),str(R/\'launch-programme/tests\'),str(R/\'launch-programme/bft\')]\nfrom candidate.computenet_hardening.production_crypto import generate_keypair\nfrom computenet_v1.resource import ResourceBoundary,make_proof,proof_id\nfrom computenet_v1.storage import VersionedBridge\nfrom computenet_adapter.service import Observer\nfrom computenet_adapter.adapter import PeerRegistry\nfrom candidate.computenet_verification.evidence import signed\npublic=json.loads((R/\'v1-integration/evidence/resource-implementation/PUBLIC-SETTLEMENT-REPLAY.json\').read_text());c=public[\'config\'];b=ResourceBoundary(c[\'checkpoint\'],c[\'migration\'],c[\'policies\'],c[\'profile\'],isolated=True);prefix=public[\'synthetic_chain\'][:8]\nkey=generate_keypair();rows=[];best=None\nfor bits,n in [(6,20),(12,8),(16,3)]:\n times=[];cpu=[];attempts=[];start=0\n for i in range(n):\n  t=time.perf_counter();u=time.process_time();p=make_proof(b.resource_id,2,prefix[-1][\'hash\'],key,bits,start=start,attempts=1000000);cpu.append(time.process_time()-u);times.append(time.perf_counter()-t);attempts.append(p[\'payload\'][\'nonce\']-start+1);start=p[\'payload\'][\'nonce\']+1;best=p\n rows.append({\'target_bits\':bits,\'samples\':n,\'wall_seconds_total\':sum(times),\'cpu_seconds_total\':sum(cpu),\'raw_wall_seconds\':times,\'raw_cpu_seconds\':cpu,\'raw_attempt_counts\':attempts,\'attempts_total\':sum(attempts),\'hash_attempts_per_cpu_second\':sum(attempts)/sum(cpu),\'mean_proof_seconds\':statistics.mean(times),\'p95_sample_seconds\':sorted(times)[max(0,math.ceil(.95*len(times))-1)],\'claim\':\'local canonical JSON/SHA256 implementation, not hardware/resource-distribution proof\'})\nt=time.perf_counter();u=time.process_time()\nfor _ in range(1000):b.check_admission(best,prefix)\nverification={\'operations\':1000,\'wall_seconds\':time.perf_counter()-t,\'cpu_seconds\':time.process_time()-u};verification[\'operations_per_second\']=1000/verification[\'wall_seconds\']\nfull_times=[];full_cpu=[]\nfor _ in range(10):\n t=time.perf_counter();u=time.process_time();b.validate(public[\'synthetic_chain\']);full_times.append(time.perf_counter()-t);full_cpu.append(time.process_time()-u)\nfull_replay={\'samples\':10,\'records\':len(public[\'synthetic_chain\']),\'work_payments_in_existing_fixture\':4,\'mean_wall_seconds\':statistics.mean(full_times),\'max_wall_seconds\':max(full_times),\'cpu_seconds_total\':sum(full_cpu),\'scope\':\'existing public signed synthetic finality/receipt/fee/account replay; no new payment or ledger write\'}\nwith tempfile.TemporaryDirectory(prefix=\'cn-adapter-metrics-\') as tmp:\n root=Path(tmp);s=VersionedBridge(root/\'snapshot\',b);s.initialize(prefix);before=s.path.read_bytes();hash0=hashlib.sha256(before).hexdigest();timings=[]\n for _ in range(10):\n  t=time.perf_counter();Observer(s.path,b).store.read();timings.append(time.perf_counter()-t)\n assert s.path.read_bytes()==before\n node=Observer(s.path,b);registry=PeerRegistry(root/\'discovery\',node,{\'mode\':\'observer-rehearsal\',\'peer_ports\':[19092],\'max_peers\':16})\n announcement=signed({\'schema\':\'computenet.resource-peer/v1\',\'network\':\'computenet-mainnet-1\',\'protocol_id\':b.advancement_id,\'proof\':best,\'endpoint\':\'https://127.0.0.1:19092\',\'tls_sha256\':\'1\'*64},key[\'private_key\'])\n t=time.perf_counter();u=time.process_time()\n for _ in range(100):registry.check(announcement)\n admission={\'operations\':100,\'wall_seconds\':time.perf_counter()-t,\'cpu_seconds\':time.process_time()-u,\'network_requests\':0};admission[\'operations_per_second\']=100/admission[\'wall_seconds\']\n writes=[]\n for _ in range(10):\n  t=time.perf_counter();registry.put(announcement);writes.append(time.perf_counter()-t)\n registry_io={\'samples\':10,\'mean_durable_metadata_commit_seconds\':statistics.mean(writes),\'max_seconds\':max(writes),\'database_bytes\':registry.path.stat().st_size,\'canonical_bytes_changed\':s.path.read_bytes()!=before}\n recovery={\'samples\':10,\'mean_seconds\':statistics.mean(timings),\'max_seconds\':max(timings),\'canonical_bytes\':len(before),\'canonical_sha256_before\':hash0,\'canonical_sha256_after\':hashlib.sha256(s.path.read_bytes()).hexdigest(),\'ledger_advancement\':False,\'scope\':\'observer process-object reopen and full snapshot verification, not power-loss restore\'}\nrss=resource.getrusage(resource.RUSAGE_SELF).ru_maxrss;rss_bytes=int(rss if platform.system()==\'Darwin\' else rss*1024)\nresult={\'host\':{\'system\':platform.system(),\'architecture\':platform.machine(),\'python\':platform.python_version(),\'logical_cpus\':os.cpu_count()},\'proof_generation\':rows,\'proof_verification\':verification,\'signed_endpoint_proof_validation\':admission,\'discovery_metadata_persistence\':registry_io,\'observer_recovery\':recovery,\'full_receipt_accounting_replay\':full_replay,\'process_peak_rss_bytes\':rss_bytes,\'pricing\':{\'measured_cash_cost\':None,\'electricity_kwh\':None,\'hourly_operator_cost\':None,\'reason\':\'no operator invoices, electricity meter or contracted resource prices available; CPU/RSS measurements are physical cost evidence, not a price/security budget\',\'runway_formula\':\'90*sum(measured_operator_daily_costs)+review_cost+restore_reserve\'},\'production_parameters_selected\':False,\'production_access\':False}\n(pathlib.Path(\'/tmp/linux-measurements.json\')).write_text(json.dumps(result,indent=2)+\'\\n\');print(json.dumps(result,indent=2))\n']' returned non-zero exit status 1.
