Conversation
|
Important Review skippedAuto reviews are limited based on label configuration. 🚫 Review skipped — only excluded labels are configured. (7)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Essentials Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
|
Workflow state fingerprint for Keepalive Loop Reporter. Do not edit. |
|
Workflow state fingerprint for Agents Gate Followups. Do not edit. |
There was a problem hiding this comment.
🟡 Changes recommended
Productivity detection and embedding vector alignment have unresolved moderate issues; diagnostic wiring also needs updates.
Get a fresh assessment by requesting another Copilot review.
Pull request overview
Synchronizes shared workflow, runner, embedding, model-catalog, and contract updates.
Changes:
- Adds productivity-aware runner retries and cooldowns.
- Updates embedding and catalog handling.
- Refreshes workflow dependencies and documentation.
File summaries
| File | Summary |
|---|---|
tools/embedding_provider.py |
Updates embedding input handling; blank inputs must retain index-aligned zero vectors. |
tools/discover_model_catalog.py |
Hardens catalog timestamp parsing and filtering. |
scripts/runner_lib/core.py |
Adds debounce recovery logic; diagnostic measurements and outputs need completion. |
scripts/runner_lib/__init__.py |
Exports debounce constants. |
docs/contracts/tracked-variable-v1.md |
Updates the upstream contract link. |
.github/workflows/agents-81-gate-followups.yml |
Tracks runner productivity; task deltas must count alongside commits. |
Review details
Suppressed comments (3)
scripts/runner_lib/core.py:1321
- Although
drainableis written to GITHUB_OUTPUT here, the workflow only promotesdispatch_should_runanddispatch_reasonfrom this step to the evaluate job outputs, and no downstream step readsdrainable. The new recovery diagnostic therefore never reaches the gate summary or PR-facing state; expose and consume this output in the workflow.
# Always emitted, including as "" for a granted dispatch, so "no drainable path stated"
# can never be confused with "nothing is blocking" — one sentinel, one meaning.
"drainable": decision.drainable,
scripts/runner_lib/core.py:1162
- The new refusal diagnostic still contains only a generic drainable path; it does not report the prior commit/task-delta quantities required by the linked #3433 contract. As a result,
duplicate-completedremains unable to explain the blocking measurements that led to the decision. Include those persisted measurements in the decision/output before relying on this message for recovery.
drainable=(
"a new head commit"
if status == "completed"
else (
"the in-flight run finishing, or this pending record ageing past "
f"{PENDING_STALE_AFTER_SECONDS}s"
)
),
tools/embedding_provider.py:214
- The fallback provider has the same alignment regression: filtering here makes the loop produce one vector per nonblank item, while callers and the existing tests require one vector per input, including zero vectors for blank strings. Removing the filter (or otherwise retaining the input indices) is necessary.
items = [text.strip() for text in texts if text and text.strip()]
- Files reviewed: 6/6 changed files
- Comments generated: 2
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
Maint 71 auto-resolved bot review thread(s) on manifest-synced content.
|
|
Closing this generated delivery as no longer current. |
4 similar comments
|
Closing this generated delivery as no longer current. |
|
Closing this generated delivery as no longer current. |
|
Closing this generated delivery as no longer current. |
|
Closing this generated delivery as no longer current. |
23629fc to
69ae91c
Compare
|
Closing this generated delivery as no longer current. |
|
Closing this generated delivery as no longer current. |
6 similar comments
|
Closing this generated delivery as no longer current. |
|
Closing this generated delivery as no longer current. |
|
Closing this generated delivery as no longer current. |
|
Closing this generated delivery as no longer current. |
|
Closing this generated delivery as no longer current. |
|
Closing this generated delivery as no longer current. |
Automated sync from stranske/Workflows Template hash: 277248a76704 Changes synced from sync-manifest.yml Consumer-sync plan ID: sha256:277248a767040c127481741a62e5aa6c589b5019e2a14de594261944263307cb Plan scope: full Scope base SHA: full Source commit: a0e4a8a03d0794a2fcbb480ab4f38fbb3d0df697 Canary evidence JSON (base64): eyJzY2hlbWEiOiJ3b3JrZmxvd3MuY29uc3VtZXItc3luYy1jYW5hcnktZXZpZGVuY2UvdjEiLCJ2ZXJzaW9uIjoxLCJyZXN1bHRzIjpbeyJyZXBvIjoic3RyYW5za2UvVHJhdmVsLVBsYW4tUGVybWlzc2lvbiIsInBsYW5faWQiOiJzaGEyNTY6Mjc3MjQ4YTc2NzA0MGMxMjc0ODE3NDFhNjJlNWFhNmM1ODliNTAxOWUyYTE0ZGU1OTQyNjE5NDQyNjMzMDdjYiIsInBsYW5fc2NvcGUiOiJmdWxsIiwic2NvcGVfYmFzZV9zaGEiOiIiLCJzb3VyY2VfY29tbWl0IjoiYTBlNGE4YTAzZDA3OTRhMmZjYmI0ODBhYjRmMzhmYmIzZDBkZjY5NyIsInByIjoxNTgyLCJoZWFkX3NoYSI6IjA2OGJjOWQ1NmYyZDkwNTNlNzQyZWIzYjJiYzdhNWUxYTAyMTc1MjQiLCJldmlkZW5jZV9zb3VyY2UiOiJvcGVuLWNhbmRpZGF0ZSIsInJlcXVpcmVkX2NoZWNrX3N0YXRlIjoic3VjY2VzcyIsImFjdGl2ZV9yZXZpZXdfdGhyZWFkX2NvdW50IjowfSx7InJlcG8iOiJzdHJhbnNrZS90cmlwLXBsYW5uZXIiLCJwbGFuX2lkIjoic2hhMjU2OjI3NzI0OGE3NjcwNDBjMTI3NDgxNzQxYTYyZTVhYTZjNTg5YjUwMTllMmExNGRlNTk0MjYxOTQ0MjYzMzA3Y2IiLCJwbGFuX3Njb3BlIjoiZnVsbCIsInNjb3BlX2Jhc2Vfc2hhIjoiIiwic291cmNlX2NvbW1pdCI6ImEwZTRhOGEwM2QwNzk0YTJmY2JiNDgwYWI0ZjM4ZmJiM2QwZGY2OTciLCJwciI6MTgyMSwiaGVhZF9zaGEiOiIwNzk3YWQwOWUzZTMwNDBkNDQxYzIyMjhhM2I1NDM2MjAzYTYxNjgxIiwiZXZpZGVuY2Vfc291cmNlIjoib3Blbi1jYW5kaWRhdGUiLCJyZXF1aXJlZF9jaGVja19zdGF0ZSI6InN1Y2Nlc3MiLCJhY3RpdmVfcmV2aWV3X3RocmVhZF9jb3VudCI6MH0seyJyZXBvIjoic3RyYW5za2UvUG9ydGFibGUtQWxwaGEtRXh0ZW5zaW9uLU1vZGVsIiwicGxhbl9pZCI6InNoYTI1NjoyNzcyNDhhNzY3MDQwYzEyNzQ4MTc0MWE2MmU1YWE2YzU4OWI1MDE5ZTJhMTRkZTU5NDI2MTk0NDI2MzMwN2NiIiwicGxhbl9zY29wZSI6ImZ1bGwiLCJzY29wZV9iYXNlX3NoYSI6IiIsInNvdXJjZV9jb21taXQiOiJhMGU0YThhMDNkMDc5NGEyZmNiYjQ4MGFiNGYzOGZiYjNkMGRmNjk3IiwicHIiOjIyOTksImhlYWRfc2hhIjoiMzRkM2JlOWVkN2EwZDU5YTMwYzEwMmE0Mjk2YzA0YzIxNDg3OGQ4NyIsImV2aWRlbmNlX3NvdXJjZSI6Im9wZW4tY2FuZGlkYXRlIiwicmVxdWlyZWRfY2hlY2tfc3RhdGUiOiJzdWNjZXNzIiwiYWN0aXZlX3Jldmlld190aHJlYWRfY291bnQiOjB9XX0=
69ae91c to
4dca6de
Compare
|
Closing this generated delivery as no longer current. |
1 similar comment
|
Closing this generated delivery as no longer current. |
Sync Summary
Files Updated
Files Skipped
Review Checklist
Source: stranske/Workflows
Source SHA:
a0e4a8a03d0794a2fcbb480ab4f38fbb3d0df697Template hash:
277248a76704Consumer-sync plan ID:
sha256:277248a767040c127481741a62e5aa6c589b5019e2a14de594261944263307cbPlan scope:
fullScope base SHA:
fullSync phase:
promoteSync branch:
sync/workflows-deliveryConsumer repo:
stranske/ReadyManifest:
.github/sync-manifest.ymlautofix: false