Documentation
¶
Overview ¶
Package consent provides consent simulation for PromptArena scenarios. It implements a hooks.ToolHook that intercepts client-side tool execution and simulates consent grant, denial, or timeout based on scenario overrides.
Index ¶
- func OverridesFromContext(ctx context.Context) map[string]string
- func ToolRegistryFromContext(ctx context.Context) *tools.Registry
- func WithConsentOverrides(ctx context.Context, overrides map[string]string) context.Context
- func WithToolRegistry(ctx context.Context, registry *tools.Registry) context.Context
- type SimulationHook
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func OverridesFromContext ¶
OverridesFromContext retrieves consent overrides from the context.
func ToolRegistryFromContext ¶
ToolRegistryFromContext retrieves a tool registry from the context.
func WithConsentOverrides ¶
WithConsentOverrides stores consent overrides in the context.
Types ¶
type SimulationHook ¶
type SimulationHook struct{}
SimulationHook implements hooks.ToolHook to simulate consent decisions for client-side tools during PromptArena scenario execution.
func NewSimulationHook ¶
func NewSimulationHook() *SimulationHook
NewSimulationHook creates a new consent simulation hook.
func (*SimulationHook) AfterExecution ¶
func (h *SimulationHook) AfterExecution(_ context.Context, _ hooks.ToolRequest, _ hooks.ToolResponse) hooks.Decision
AfterExecution is a no-op — always allows.
func (*SimulationHook) BeforeExecution ¶
func (h *SimulationHook) BeforeExecution(ctx context.Context, req hooks.ToolRequest) hooks.Decision
BeforeExecution checks consent overrides and blocks denied/timed-out tools.