fix(providers): clarify reliable failure entries for custom providers (#594)

* fix(workflows): standardize runner configuration for security jobs

* ci(actionlint): add Blacksmith runner label to config

Add blacksmith-2vcpu-ubuntu-2404 to actionlint self-hosted-runner labels config
to suppress "unknown label" warnings during workflow linting.

This label is used across all workflows after the Blacksmith migration.

* fix(actionlint): adjust indentation for self-hosted runner labels

* feat(security): enhance security workflow with CodeQL analysis steps

* fix(security): update CodeQL action to version 4 for improved analysis

* fix(security): remove duplicate permissions in security workflow

* fix(security): revert CodeQL action to v3 for stability

The v4 version was causing workflow file validation failures.
Reverting to proven v3 version that is working on main branch.

* fix(security): remove duplicate permissions causing workflow validation failure

The permissions block had duplicate security-events and actions keys,
which caused YAML validation errors and prevented workflow execution.

Fixes: workflow file validation failures on main branch

* fix(security): remove pull_request trigger to reduce costs

* fix(security): restore PR trigger but skip codeql on PRs

* fix(security): resolve YAML syntax error in security workflow

* refactor(security): split CodeQL into dedicated scheduled workflow

* fix(security): update workflow name to Rust Package Security Audit

* fix(codeql): remove push trigger, keep schedule and on-demand only

* feat(codeql): add CodeQL configuration file to ignore specific paths

* Potential fix for code scanning alert no. 39: Hard-coded cryptographic value

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* fix(ci): resolve auto-response workflow merge markers

* fix(build): restore ChannelMessage reply_target usage

* ci(workflows): run workflow sanity on workflow pushes for all branches

* ci(workflows): rename auto-response workflow to PR Auto Responder

* ci(workflows): require owner approval for workflow file changes

* ci: add lint-first PR feedback gate

* ci(workflows): split label policy checks from workflow sanity

* ci(workflows): consolidate policy and rust workflow setup

* ci: add safe pull request intake sanity checks

* ci(security): switch audit to pinned rustsec audit-check

* fix(providers): clarify reliable failure entries for custom providers

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
This commit is contained in:
Will Sarg 2026-02-17 13:53:03 -05:00 committed by GitHub
parent 1fbea97b2a
commit 3c4ed2e28e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -194,7 +194,7 @@ impl Provider for ReliableProvider {
"retryable" "retryable"
}; };
failures.push(format!( failures.push(format!(
"{provider_name}/{current_model} attempt {}/{}: {failure_reason}", "provider={provider_name} model={current_model} attempt {}/{}: {failure_reason}",
attempt + 1, attempt + 1,
self.max_retries + 1 self.max_retries + 1
)); ));
@ -299,7 +299,7 @@ impl Provider for ReliableProvider {
"retryable" "retryable"
}; };
failures.push(format!( failures.push(format!(
"{provider_name}/{current_model} attempt {}/{}: {failure_reason}", "provider={provider_name} model={current_model} attempt {}/{}: {failure_reason}",
attempt + 1, attempt + 1,
self.max_retries + 1 self.max_retries + 1
)); ));
@ -610,8 +610,8 @@ mod tests {
.expect_err("all providers should fail"); .expect_err("all providers should fail");
let msg = err.to_string(); let msg = err.to_string();
assert!(msg.contains("All providers/models failed")); assert!(msg.contains("All providers/models failed"));
assert!(msg.contains("p1")); assert!(msg.contains("provider=p1 model=test"));
assert!(msg.contains("p2")); assert!(msg.contains("provider=p2 model=test"));
} }
#[test] #[test]