Self-review fixes for PR #54:
- Add truncateBody helper to limit error message body length (200 chars)
Addresses security bot finding about potential information leakage
in error messages that include upstream response bodies
- Remove unused deployment.ID field from deployment struct
Now stores just the URL string directly in the deployments map
Addresses sonnet finding about unused struct field
- Add doc comment noting deployment cache limitation
Documents that cache is never invalidated, acceptable for CI use case
- Fix trailing whitespace in action.yml aicore-resource-group default
All existing tests pass.
gpt-4.1, gpt-4.1-mini, and gpt-5-mini are not deployed on SAP AI Core.
Only gpt-5 and anthropic--claude-4.6-sonnet are available.
Removed matrix entries for non-existent deployments to fix CI failures.
Implements native AI Core support with:
- OAuth2 token refresh
- Deployment discovery via /v2/lm/deployments
- Anthropic Messages API via /invoke endpoint
- Uses bedrock-2023-05-31 API version (AI Core uses Bedrock format)
- Model field omitted from body (deployment URL specifies model)
- Retry logic with exponential backoff
Tested via integration tests against live AI Core endpoint.
- Restore sonnet reviewer with correct model name (anthropic--claude-4.6-sonnet)
- Remove gpt-4.1, gpt-4.1-mini, gpt-5-mini (not deployed on SAP AI Core)
- Keep gpt-5 and security reviewers
The previous model names (claude-sonnet-4-6, etc.) were incorrect —
SAP AI Core uses 'anthropic--claude-4.6-sonnet' format.
Models claude-sonnet-4-6, gpt-4.1, gpt-4.1-mini, and gpt-5-mini are not
deployed on the LLM proxy, causing 502 errors. Keep only gpt-5 which
is the only available model.
When a new push arrives while review-bot is processing, the review
would be posted against a stale commit. This causes noise in the
PR timeline with findings that reference code that no longer exists.
Before posting, re-fetch PR metadata and compare HEAD SHA with the
commit we evaluated against. If they differ, log a warning and exit
successfully — a new workflow run should already be processing the
new HEAD.
Fixes#52
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.