Conversation
Automated sync from stranske/Workflows Template hash: d4ac30fbde51 Changes synced from sync-manifest.yml
🤖 Keepalive Loop StatusPR #297 | Agent: Codex | Iteration 0/5 Current State
🔍 Failure Classification| Error type | infrastructure | |
Keepalive Work Log (click to expand)
|
There was a problem hiding this comment.
Pull request overview
Synchronizes this repository’s automation/template files with the upstream stranske/Workflows templates, affecting GitHub Actions helper scripts, LangChain helper utilities, and assistant-facing documentation.
Changes:
- Updates PR-body metadata updater to de-duplicate concurrent marker blocks when upserting managed sections.
- Adjusts verifier context gathering to compute
baseReffrom the fully-fetched PR payload and simplifies a few config-building expressions. - Updates LangChain client helper module by removing slot/catalog helper functions (currently breaking downstream imports).
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
tools/langchain_client.py |
Removes slot-definition and provider-model catalog helper functions used by chat provider registry. |
scripts/langchain/issue_optimizer.py |
Simplifies issue_or_pr conditional expression. |
scripts/langchain/capability_check.py |
Simplifies issue_or_pr conditional expression. |
CLAUDE.md |
Removes the “Slow Test Strategy” section from the assistant context doc. |
.github/scripts/agents_verifier_context.js |
Uses PR-details response to derive baseRef and retains it for context output. |
.github/scripts/agents_pr_meta_update_body.js |
Enhances upsertBlock to remove duplicate marker pairs caused by concurrent updates. |
| @@ -148,29 +148,6 @@ def _resolve_slots() -> list[SlotDefinition]: | |||
| return _apply_slot_env_overrides(_load_slot_config()) | |||
|
|
|||
|
|
|||
There was a problem hiding this comment.
get_provider_model_catalog() (and list_slot_definitions()) were removed here, but src/counter_risk/chat/providers/base.py imports and calls get_provider_model_catalog(). This will raise an ImportError at runtime and break tests/test_chat_provider_clients.py. Please restore/re-export get_provider_model_catalog() (and keep its previous behavior of falling back to _default_slots() when the configured catalog is empty), or update call sites to use the new API in a way that preserves the same semantics.
| def list_slot_definitions() -> list[SlotDefinition]: | |
| """Return the configured slot definitions, falling back to defaults if empty. | |
| This preserves the historical behavior where an empty configured catalog | |
| is treated as "no catalog", and the built-in default slots are used instead. | |
| """ | |
| slots = _resolve_slots() | |
| if not slots: | |
| slots = _default_slots() | |
| return slots | |
| def get_provider_model_catalog() -> dict[str, dict[str, str]]: | |
| """Return a catalog of provider/model pairs keyed by slot name. | |
| The catalog is derived from the current slot definitions, with the same | |
| empty-catalog fallback behavior as :func:`list_slot_definitions`. | |
| """ | |
| catalog: dict[str, dict[str, str]] = {} | |
| for slot in list_slot_definitions(): | |
| catalog[slot.name] = {"provider": slot.provider, "model": slot.model} | |
| return catalog |
The sync commit (021cfd7) removed get_provider_model_catalog() from tools/langchain_client.py, but it is still imported by src/counter_risk/chat/providers/base.py and patched in tests/test_chat_provider_clients.py, causing mypy and runtime failures. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sync Summary
Files Updated
Files Skipped
Review Checklist
Source: stranske/Workflows
Manifest:
.github/sync-manifest.yml