Skip to content

feat(runner): classify privacy through llm targets - #930

Closed
afourniernv wants to merge 1 commit into
codex/privacy-semantic-decisionfrom
codex/privacy-generic-llm-classifier
Closed

afourniernv wants to merge 1 commit into
codex/privacy-semantic-decisionfrom
codex/privacy-generic-llm-classifier

Conversation

@afourniernv

@afourniernv afourniernv commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Draft stack 7/10.

What

Allow the semantic privacy classifier to use either a typed decision target or an ordinary LLM target.

The LLM form receives the same bounded request context and must return the configured structured verdict.

Why

Typed decisions are the tighter integration, but some deployments need to use a model already available through Switchyard's LLM clients.

How tested

Tests cover both classifier types, valid and invalid verdicts, failures, target isolation, required timeouts, and unsupported request modifiers. The complete stack passed workspace formatting, Clippy with warnings denied, and workspace tests. No live provider calls.

Notes for reviewers

The typed decision classifier remains the default. An LLM classifier is selected with:

[routes.<name>.privacy.classifier]
type = "llm"
target = "privacy_classifier"
clear_threshold = 0.9

No public Rust, Python, HTTP, or ABI changes.

Signed-off-by: Alex Fournier <afournier@nvidia.com>
@afourniernv
afourniernv added this pull request to stack #934 October 6, 2026 18:18
@afourniernv

Copy link
Copy Markdown
Contributor Author

Closing this draft stack for now. I’m sharing the cumulative branch and design/evaluation artifacts for architecture feedback before reopening a smaller stack.

@afourniernv afourniernv closed this Oct 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant