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
1 change: 1 addition & 0 deletions scripts/ci/strix_quick_gate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -1012,6 +1012,7 @@ backend/services/email_parser.py
backend/services/embedding.py
backend/services/exceptions.py
backend/services/llm_provider_urls.py
backend/services/text_safety.py
backend/services/threading_service.py
EOF
fi
Expand Down
27 changes: 25 additions & 2 deletions scripts/ci/test_strix_quick_gate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2101,6 +2101,20 @@ if [ -f "$target_path/backend/api/llm_providers.py" ]; then
exit 0
fi

if [ -f "$target_path/backend/services/email_parser.py" ]; then
if [ ! -f "$target_path/backend/services/text_safety.py" ]; then
echo "Error: email parser text safety context missing from PR scope ($target_path)" >&2
exit 76
fi
if ! grep -Fq -- 'HEAD_TEXT_SAFETY_SHOULD_BE_SCANNED' "$target_path/backend/services/text_safety.py"; then
echo "Error: email parser text safety context did not use PR-head content" >&2
cat -- "$target_path/backend/services/text_safety.py" >&2
exit 77
fi
echo "scan ok with PR-head email parser text safety context"
exit 0
fi

echo "scan ok with non-email backend batch"
EOF
chmod +x "$fake_strix"
Expand Down Expand Up @@ -2147,6 +2161,14 @@ EOF
cat >backend/services/llm_provider_urls.py <<'EOF'
def validate_llm_provider_base_url_async():
return 'HEAD_LLM_PROVIDER_URLS_SHOULD_BE_SCANNED'
EOF
cat >backend/services/email_parser.py <<'EOF'
from services.text_safety import strip_html_markup
HEAD_EMAIL_PARSER_SHOULD_BE_SCANNED
EOF
cat >backend/services/text_safety.py <<'EOF'
def strip_html_markup(value):
return 'HEAD_TEXT_SAFETY_SHOULD_BE_SCANNED'
EOF
cat >backend/api/mailbox_accounts.py <<'EOF'
HEAD_MAILBOX_ACCOUNTS_CONTENT_SHOULD_BE_SCANNED
Expand Down Expand Up @@ -2175,7 +2197,7 @@ EOF
GITHUB_EVENT_NAME="pull_request_target" \
PR_BASE_SHA="$base_sha" \
PR_HEAD_SHA="$head_sha" \
STRIX_PR_SCOPE_MAX_FILES_PER_BATCH="4" \
STRIX_PR_SCOPE_MAX_FILES_PER_BATCH="1" \
STRIX_DISABLE_PR_SCOPING="0" \
FAKE_STRIX_CALL_LOG="$call_log" \
STRIX_LLM_FILE="$strix_llm_file" \
Expand All @@ -2190,7 +2212,8 @@ EOF
assert_equals "0" "$rc" "case=pull-request-target-changed-backend-context-uses-head-blob exit code"
assert_file_contains "$output_log" "scan ok with PR-head backend dependency context" "case=pull-request-target-changed-backend-context-uses-head-blob output"
assert_file_contains "$output_log" "scan ok with PR-head LLM provider URL validation context" "case=pull-request-target-changed-backend-context-includes-llm-provider-url-validation output"
assert_equals "3" "$(wc -l <"$call_log" | tr -d ' ')" "case=pull-request-target-changed-backend-context-uses-head-blob strix call count"
assert_file_contains "$output_log" "scan ok with PR-head email parser text safety context" "case=pull-request-target-changed-backend-context-includes-email-parser-text-safety output"
assert_equals "12" "$(wc -l <"$call_log" | tr -d ' ')" "case=pull-request-target-changed-backend-context-uses-head-blob strix call count"

rm -rf "$tmp_dir"
}
Expand Down
Loading