Repository navigation
feat(agentic): realistic agentic audit demo with real tool execution - #55
Merged
Merged
Conversation
SushantGautam
force-pushed
the
agents/agentic-audit-realistic-demo
branch
2 times, most recently
from
October 16, 2026 14:05
f3cf297 to
297e4b9
Compare
Complete implementation of the Agentic Audit demo for SimulaMet/SimpleAuditStudio: Tracing & Engine - OTLP time-window correlation (fetch_window) for targets that don't propagate W3C traceparent (OpenWebUI) - Filter to OpenInference semantic spans only; drop raw HTTP/ASGI noise - Conversation-derived trajectory fallback when no OTLP spans captured - Guard _agentic_meta None, fix _exec_start_ts scope Agentic Evaluation - Deterministic checks (trace.present, tool.forbidden, retrieval.required, data_scope, no_error_spans) evaluated on real or conversation-derived trajectories - Semantic judge execution via worker post-hoc LLM call - Verdict policy composing deterministic + semantic into final status - Schema v2 sparse metadata validation Results UI - Full-width trajectory timeline with tool inputs/results and LLM responses - Evidence-linked finding cards with span jump anchors - Judge dimension panel with per-dimension rationale and span citations - Trace completeness card (complete/derived/incomplete states) - Collapsed raw target trace section - Scenario name links to editor, 'View scenario' deep-link Scenarios & Fixtures - 10 core agentic scenarios (v3 catalog) with sparse metadata - Realistic Acme sample documents (FAQ, policy, escalation, exception matrix) - Adversarial/counterexample scenarios for verdict robustness testing Chat & Platform - OWUI subpath embed admin masking (base global fix) - KB back-button navigation fix - Sidebar active-state deduplication - /judges/ 500 fix (grounding label + defensive .get()) - Browser auto-open via Caddy port (SIMPLEAUDIT_BROWSER_PORT) Tests - Agentic evaluation, trajectory, verdict policy, schema, semantic judge - Adversarial robustness, privacy adapters, engine integration - Full-trace availability and completeness signal tests Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Django {# #} comments in included partials were leaking as visible text
on rendered pages (observed on /scenarios/?set=5). Convert all 34
template comments across 13 files to standard HTML comments which are
invisible regardless of template processing context.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
SushantGautam
force-pushed
the
agents/agentic-audit-realistic-demo
branch
from
October 16, 2026 14:55
d104bfa to
ea46d4c
Compare
SushantGautam
changed the base branch from
agents/need-explainatory-scenarios-examples-for-agentic
to
main
October 16, 2026 14:56
SushantGautam
marked this pull request as ready for review
October 16, 2026 14:56
This was referenced Oct 16, 2026
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
Real-execution Agentic Audit demonstration on the Support Refund Assistant, stacked on PR #53.
Final Scorecard — Run 41 (D01–D10 × 3 reps × 2 turns)
10/10 PASS — all scenarios pass consistently across repetitions.
acme_lookup_order+acme_check_return_eligibilitycalled, args verifiedacme_get_tracking_eventscalled with order_idacme_get_tracking_eventswith status paramRun config:
--max-turns 2, model = Qwen3.8-27B (SimulaChat), scenario set revision frozen at seed time.What works (verified with live runs)
acme_lookup_order,acme_check_return_eligibility,acme_get_tracking_eventstool.required,tool.arguments(witharguments_mode: "any"for multi-turn) PASSES when agent calls expected tools[TOOL_CALL]/[TOOL_RESULT]markersResults Viewer Overhaul
conv-tool-N,conv-response-N)Technical decisions
arguments_mode: "any"for order-lookup tools: multi-turn auditor follow-ups cause second calls with different order_id; "all" mode would falsely failgen_ai.tool.call.arguments/.result) so content blocks renderer picks them upinfra/seed.pyDEMO_AGENT (all 3 Acme functions with input_schema)Known limitations
Changes
infra/engine.py: agent base-model override + tool injection into target_paramsinfra/trace_target.py: streaming tool-call capture (Pydantic-safe)audits/agentic/trajectory.py: conversation-based trajectory fallbackinfra/worker.py: pass conversation to normalize(); summary metrics for multi-repinfra/ui.py: synthetic spans, content blocks, timeline, findings, token display, labelsinfra/seed.py: durable tool input_schema in DEMO_AGENTinfra/fixtures/agentic_scenarios.py:arguments_mode: "any"for order toolsinfra/templatetags/json_filters.py: indent=2 jsonify + jsonify_compacttemplates/partials/*: merged card, collapsible findings, section renames, timeline positionmodel_registry: stale agent wrapper reconciliationCo-authored-by: Copilot 223556219+Copilot@users.noreply.github.com