Skip to content

[CF-DATAPLANE][CPEX] Support plugin-directed tool execution actions #6254

Description

@lucarlig

Parent epic: #4525

Gap

Rust CPEX tool hooks can currently deny or transform pre-call arguments and post-call results. Full tool handling also needs bounded execution controls emitted by plugins.

Scope

Support validated CPEX actions for:

  • deny/allow and argument/result transformation or redaction;
  • allowlisted upstream header injection/removal;
  • timeout overrides within operator-defined limits;
  • explicit retry directives constrained by the tool-call retry policy;
  • failure directives consistent with each binding's on_error policy.

Apply actions in a deterministic order and reject contradictory or security-sensitive actions.

Acceptance criteria

  • Actions compose predictably across multiple ordered bindings.
  • Plugins cannot alter authentication, hop-by-hop, host/routing, or other protected headers.
  • Timeout and retry actions cannot exceed operator limits or make non-idempotent retries implicit.
  • Denied calls never reach the backend.
  • Post-hook redaction occurs before the result is returned or recorded.
  • Tests cover action ordering, conflicts, protected headers, deny, transform, retry, timeout, and failure handling.

Metadata

Metadata

Assignees

No one assigned

    Labels

    CF-DATAPLANETasks related to the creation of new Data Plane for ContextForge.enhancementNew feature or requestpluginsresilienceResiliencerustRust programmingsecurityImproves security

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions