microsoft / microsoft/agent-governance-toolkit

policy-engine: AgentControl::new(runtime) leaves parts=None, making with_telemetry a no-op and revalidating against Limits::default

Open
#3,941 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
6.3k
Forks
1.1k
Avg merge
5d 11h
Merged PRs (30d)
142

Description

policy-engine/sdk/rust/src/host/mod.rs: constructing AgentControl from a Runtime leaves parts=None, so with_telemetry(sink) silently does nothing, a failed Runtime::with_telemetry_perf_and_limits is swallowed, evaluate_intervention_point revalidates transformed snapshots against Limits::default() rather than the configured limits, and the removed-field check added in #3940 is bypassed for hand-built runtimes. Either populate parts from the runtime or reject construction paths that cannot.

Found in the group review of the policy-engine retarget (#3939) and deferred from the follow-up (#3940).

Contributor guide

Open the contributing guide

Research direction

Start in policy-engine/sdk/rust/src/host/mod.rs by tracing AgentControl::new(runtime), with_telemetry, Runtime::with_telemetry_perf_and_limits, and evaluate_intervention_point. Check how hand-built runtimes handle parts, configured limits, and the removed-field validation from #3940. Done means construction either preserves these behaviors or rejects unsupported paths, with failed setup no longer swallowed.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.