Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/strix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -783,7 +783,7 @@ jobs:
PR_HEAD_SHA: ${{ github.event_name == 'pull_request_target' && github.event.pull_request.head.sha || github.event.client_payload.pr_head_sha }}
IS_PR_EVIDENCE_RUN: ${{ (github.event_name == 'pull_request_target' || github.event.client_payload.pr_number != '') && 'true' || 'false' }}
run: |
export LLM_TIMEOUT=0
export LLM_TIMEOUT=300

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Required Strix quality check always fails

When LLM_TIMEOUT is 300, the required shell contract still demands 0 and records a failure. Every workflow change therefore fails quality CI.

Prompt for agents
Update scripts/ci/test_strix_quick_gate.sh in assert_strix_workflow_pr_trigger_hardened so its LLM_TIMEOUT contract requires the new positive 300-second value instead of 0. Keep the other unlimited timeout assertions unchanged, and ensure the existing Strix changed-path quality workflow executes both the Python regression test and the shell contract consistently.
Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

export STRIX_MEMORY_COMPRESSOR_TIMEOUT=0
export STRIX_PROCESS_TIMEOUT_SECONDS=0
export STRIX_TOTAL_TIMEOUT_SECONDS=0
Expand Down
20 changes: 20 additions & 0 deletions tests/test_strix_llm_timeout_contract.py

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔍 Contract edits can skip Strix quality

The changed-path workflow omits this test from its paths filter. A later contract-only edit can bypass the dedicated Strix quality job.

Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
"""Regression contract for the Strix model preflight request timeout."""

from __future__ import annotations

import re
from pathlib import Path


WORKFLOW_PATH = Path(__file__).parents[1] / ".github" / "workflows" / "strix.yml"


def test_strix_model_preflight_timeout_matches_upstream_default() -> None:
"""Keep model preflight finite and positive instead of cancelling it immediately."""
workflow = WORKFLOW_PATH.read_text(encoding="utf-8")
configured_timeouts = re.findall(
r"(?m)^\s*export LLM_TIMEOUT=([0-9]+)\s*$",
workflow,
)

assert configured_timeouts == ["300"]
Loading