FreshCtx™

Receiving-side delegation guard

FreshCtx + A2A delegation guard

Wrap an official A2A Python SDK AgentExecutor with FreshCtxA2AExecutor to verify a bounded delegation receipt and revalidate evidence before delegated work begins.

What FreshCtx protects

The receiver verifies the signed delegation receipt, recomputes the application-selected action-intent digest, and revalidates its declared evidence immediately before the wrapped executor starts.

Where the pre-action boundary sits

The boundary is the receiving side of A2A. Missing, malformed, expired, tampered, wrong-recipient, replayed, or intent-mismatched receipts produce a native rejected task update, as does STALE_REASONING or UNVERIFIABLE evidence.

Limitations

  • Every receiving hop revalidates its own declared evidence; correlation IDs do not re-anchor or revoke a whole chain.
  • Bounded retries and the circuit breaker limit waiting; they never convert uncertainty into permission.
  • The in-memory replay store is process-local; cross-process protection requires SQLiteDelegationReplayStore or an equivalent atomic consume contract.

Installation

install
python -m pip install 'freshctx[a2a]==0.16.0'

Minimal example

A2A delegation guard · minimal example
guarded = FreshCtxA2AExecutor(
    executor,
    receiving_agent="payments-agent",
    depends_on=[approval_decision],
    store=store,
    key_resolver=resolve_process_local_key,
    replay_store=SQLiteDelegationReplayStore(".freshctx/a2a-replay.sqlite3"),
)

Continue

Third-party names and logos are trademarks of their respective owners. Their appearance identifies compatible integration surfaces and does not imply endorsement or partnership.