molecule-core/workspace
Molecule AI Core Platform Lead 6d5fd6be3e fix(workspace): wrap delegate_task return with sanitize_a2a_result (CWE-117, closes #537)
Issue #537: builtin_tools/a2a_tools.py:72 returns peer-sourced text from
delegate_task() without OFFSEC-003 sanitization. Sibling regression to #491 / #492
in a different code path (google-adk delegation surface).

Fix: import sanitize_a2a_result from _sanitize_a2a and wrap all 4 peer-controlled
return sites in delegate_task() — parts[0].text path, empty-parts str(result) path,
fallback str(result) path, and the error message path.

Closes #537.
2026-05-11 19:09:18 +00:00
..
adapters fix(workspace): include ~1KB sanitized stderr in A2A error responses 2026-05-11 18:21:19 +00:00
builtin_tools fix(workspace): wrap delegate_task return with sanitize_a2a_result (CWE-117, closes #537) 2026-05-11 19:09:18 +00:00
lib
molecule_audit
platform_tools
plugins_registry fix(workspace): replace asyncio.get_event_loop().run_until_complete with asyncio.run() (#307) (#498) 2026-05-11 15:37:34 +00:00
policies
scripts feat(workspace): add static .github-token fallback to git credential helper 2026-05-10 02:17:22 +00:00
skill_loader
tests fix(tests): correct assert in test_sanitize_agent_error_stderr_and_exc 2026-05-11 18:21:19 +00:00
_sanitize_a2a.py fix(workspace): OFFSEC-003 — separate sanitize vs. wrap, fix tool_delegate_task (#477) 2026-05-11 15:10:25 +00:00
.coveragerc
a2a_cli.py fix(workspace): default PLATFORM_URL to host.docker.internal in all modules (#475) 2026-05-11 15:17:53 +00:00
a2a_client.py fix(a2a): add cache-first check to enrich_peer_metadata_nonblocking 2026-05-11 16:59:54 +00:00
a2a_executor.py fix(workspace): include ~1KB sanitized stderr in A2A error responses 2026-05-11 18:21:19 +00:00
a2a_mcp_server.py
a2a_response.py fix(workspace): push-mode Queued returns delivery_mode="push" (not silent default "poll") 2026-05-11 02:47:21 +00:00
a2a_tools_delegation.py fix(workspace): OFFSEC-003 — separate sanitize vs. wrap, fix tool_delegate_task (#477) 2026-05-11 15:10:25 +00:00
a2a_tools_inbox.py
a2a_tools_memory.py
a2a_tools_messaging.py
a2a_tools_rbac.py
a2a_tools.py
adapter_base.py
agent.py
agents_md.py
boot_routes.py
build-all.sh
card_helpers.py
config.py fix(runtime): MODEL_PROVIDER env is misnamed — accept MODEL/MOLECULE_MODEL, deprecate the legacy name 2026-05-10 02:38:14 -07:00
configs_dir.py
consolidation.py
coordinator.py
Dockerfile ci(docker): pin base image digests in all Dockerfiles 2026-05-09 23:56:39 +00:00
entrypoint.sh
event_log.py
events.py
executor_helpers.py fix(workspace): include ~1KB sanitized stderr in A2A error responses 2026-05-11 18:21:19 +00:00
heartbeat.py fix(workspace): poll activity_logs for a2a_proxy delegation results (closes #354) (#501) 2026-05-11 15:53:05 +00:00
inbox_uploads.py
inbox.py
initial_prompt.py
internal_chat_uploads.py
internal_file_read.py
main.py refactor(workspace): extract idle-loop pending-check guard for direct unit-testing 2026-05-11 10:49:40 +00:00
mcp_cli.py
mcp_doctor.py
mcp_heartbeat.py
mcp_inbox_pollers.py
mcp_workspace_resolver.py
molecule_ai_status.py
not_configured_handler.py
platform_auth.py
platform_inbound_auth.py
plugins.py
preflight.py
prompt.py
pytest.ini
rebuild-runtime-images.sh
requirements.txt
runtime_wedge.py
secret_redactor.py
shared_runtime.py
smoke_mode.py
transcript_auth.py
watcher.py