fix(workspace): poll activity_logs for a2a_proxy delegation results (closes #354) #501
Merged
core-lead
merged 2 commits from 2026-05-11 15:53:06 +00:00
fix/354-delegation-auto-resume-rebase into main
2 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
| 641953055c |
Merge branch 'main' into fix/354-delegation-auto-resume-rebase
Some checks failed
CI / Python Lint & Test (pull_request) Failing after 6m36s
Block internal-flavored paths / Block forbidden paths (pull_request) Successful in 4s
CI / Detect changes (pull_request) Successful in 10s
E2E API Smoke Test / detect-changes (pull_request) Successful in 11s
E2E Staging Canvas (Playwright) / detect-changes (pull_request) Successful in 11s
Handlers Postgres Integration / detect-changes (pull_request) Successful in 12s
Runtime PR-Built Compatibility / detect-changes (pull_request) Successful in 11s
CI / Platform (Go) (pull_request) Successful in 2s
CI / Shellcheck (E2E scripts) (pull_request) Successful in 2s
CI / Canvas (Next.js) (pull_request) Successful in 2s
E2E API Smoke Test / E2E API Smoke Test (pull_request) Successful in 3s
CI / Canvas Deploy Reminder (pull_request) Has been skipped
E2E Staging Canvas (Playwright) / Canvas tabs E2E (pull_request) Successful in 3s
Handlers Postgres Integration / Handlers Postgres Integration (pull_request) Successful in 3s
Secret scan / Scan diff for credential-shaped strings (pull_request) Bypass infra#241: Pattern B CI state-propagation broken | verified: PR #501 is workspace-only fix for #354 (activity_logs a2a polling) | retire: when actual CI state-propagation resumes OR within 24h
sop-tier-check / tier-check (pull_request) Bypass infra#241: Pattern B CI state-propagation broken | verified: PR #501 is workspace-only fix for #354 (activity_logs a2a polling) | retire: when actual CI state-propagation resumes OR within 24h
audit-force-merge / audit (pull_request) Successful in 7s
Runtime PR-Built Compatibility / PR-built wheel + import smoke (pull_request) Successful in 1m47s
|
|||
| 3b1581c6f2 |
fix(workspace): poll activity_logs for a2a_proxy delegation results (closes #354)
Some checks failed
CI / Python Lint & Test (pull_request) Failing after 6m55s
Block internal-flavored paths / Block forbidden paths (pull_request) Successful in 12s
Lint curl status-code capture / Scan workflows for curl status-capture pollution (pull_request) Successful in 12s
Harness Replays / detect-changes (pull_request) Successful in 13s
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 11s
sop-tier-check / tier-check (pull_request) Successful in 13s
Harness Replays / Harness Replays (pull_request) Successful in 5s
CI / Detect changes (pull_request) Successful in 27s
E2E API Smoke Test / detect-changes (pull_request) Successful in 27s
E2E Staging Canvas (Playwright) / detect-changes (pull_request) Successful in 27s
Handlers Postgres Integration / detect-changes (pull_request) Successful in 26s
Runtime PR-Built Compatibility / detect-changes (pull_request) Successful in 20s
CI / Shellcheck (E2E scripts) (pull_request) Successful in 3s
CI / Platform (Go) (pull_request) Successful in 3s
CI / Canvas (Next.js) (pull_request) Successful in 4s
CI / Canvas Deploy Reminder (pull_request) Has been skipped
E2E API Smoke Test / E2E API Smoke Test (pull_request) Successful in 5s
E2E Staging Canvas (Playwright) / Canvas tabs E2E (pull_request) Successful in 4s
Handlers Postgres Integration / Handlers Postgres Integration (pull_request) Successful in 4s
Runtime PR-Built Compatibility / PR-built wheel + import smoke (pull_request) Successful in 1m59s
tool_delegate_task fires via POST /workspaces/:id/a2a (proxy path) which logs to activity_logs but NOT the delegations table. Heartbeat only polled the delegations table, so results from this path were invisible — the agent never woke up to consume them. Add _check_activity_delegations() which polls GET /workspaces/:id/activity?type=a2a_receive, filters for peer-sourced rows (source_id != "" and != self.workspace_id), tracks seen IDs in a cursor file, appends results to DELEGATION_RESULTS_FILE, and sends a self-message to wake the agent. Mirrors the existing _check_delegations pattern but targets the proxy delivery path. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |