consent

package
v1.3.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 4, 2026 License: Apache-2.0 Imports: 4 Imported by: 0

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

Constants

This section is empty.

Variables

This section is empty.

Functions

func OverridesFromContext

func OverridesFromContext(ctx context.Context) map[string]string

OverridesFromContext retrieves consent overrides from the context.

func ToolRegistryFromContext

func ToolRegistryFromContext(ctx context.Context) *tools.Registry

ToolRegistryFromContext retrieves a tool registry from the context.

func WithConsentOverrides

func WithConsentOverrides(ctx context.Context, overrides map[string]string) context.Context

WithConsentOverrides stores consent overrides in the context.

func WithToolRegistry

func WithToolRegistry(ctx context.Context, registry *tools.Registry) context.Context

WithToolRegistry stores a tool registry 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

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.

func (*SimulationHook) Name

func (h *SimulationHook) Name() string

Name returns the hook name.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL