Repository navigation
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a runnable, offline Python SDK example for the local-control timing work discussed in Part A of the Agent Control load-test thread. It uses the per-control
execution_duration_msadded by #283, runs five synthetic built-in control cases (allow, block, steer, SQL, JSON), validates their outcomes, and reports per-control time beside the full SDK-call time. An optional--concurrencymode runs a bounded single-process throughput smoke and records observed calls per second. An HTTP mock rejects accidental network requests and SDK observability is disabled for the run.This PR is stacked on #283 because that PR supplies the measured field. Retarget it to
mainafter #283 merges.Verification
python -m pytest examples/sdk_local_timing/test_demo.py -q: 2 passed using the exact feat(engine): capture per-control execution duration [SAO-18023] #283 SDK environment.ruff check examples/sdk_local_timingandruff format --check examples/sdk_local_timing: passed.demo.py --iterations 4 --warmup 2and--iterations 12 --warmup 2 --concurrency 4: all five cases produced finite, nonnegative control durations and a tabular comparison.make prepushcould not complete because the configured Splunk Artifactory Python index returned HTTP 401 while resolvinggoogle-re2; no test failure was reported before dependency resolution stopped.Scope
This is a fixture-driven SDK-local timing example. The throughput smoke uses one Python process and event loop, and it does not add an evaluator-only timer, instrument a decorated agent, or establish SDK/server load capacity. Server-side GLoad work is tracked separately in Orbit.