diff --git a/scripts/ci/contextual_orchestrator_review_sidecar.sh b/scripts/ci/contextual_orchestrator_review_sidecar.sh index a83becf67b..965e6b4876 100755 --- a/scripts/ci/contextual_orchestrator_review_sidecar.sh +++ b/scripts/ci/contextual_orchestrator_review_sidecar.sh @@ -113,6 +113,11 @@ log "installing hash-pinned orchestrator dependencies at ${checked_out}" PYTHONPATH="$ORCHESTRATOR_SOURCE:$ORG_REPO_ROOT" "$sidecar_python" -c \ 'from contextual_orchestrator.credentials import get_credential; from contextual_orchestrator.model_discovery import discover_all_models, free_discovered_models; from contextual_orchestrator.orchestrator import ModelClient, TaskOrchestrator, load_agents; from contextual_orchestrator.review_gateway import register_review_credentials; from contextual_orchestrator.server import SecurityConfig, serve' PYTHONPATH="$ORCHESTRATOR_SOURCE:$ORG_REPO_ROOT" "$sidecar_python" - <<'PY' +import faulthandler + +# Fatal startup diagnostics contain stack locations, never frame locals. +faulthandler.enable() + import contextlib import http.client import io diff --git a/tests/test_contextual_orchestrator_review_sidecar_contract.py b/tests/test_contextual_orchestrator_review_sidecar_contract.py index e602f19268..3db35662d1 100644 --- a/tests/test_contextual_orchestrator_review_sidecar_contract.py +++ b/tests/test_contextual_orchestrator_review_sidecar_contract.py @@ -397,6 +397,9 @@ def test_strix_gateway_uses_provider_neutral_reasoning_effort() -> None: def test_sidecar_probes_the_pinned_server_body_limit_at_http_boundary() -> None: """The exact vendored SHA must enforce the review limit at its HTTP boundary.""" text = _read(SIDECAR) + assert text.index("faulthandler.enable()") < text.index( + "from contextual_orchestrator.server import SecurityConfig, build_server" + ) assert "from contextual_orchestrator.server import SecurityConfig, build_server" in text assert '"POST",' in text assert '"/v1/chat/completions",' in text