Skip to content

[Feature] Official HOL Guard FunctionInvocationFilter security sample #14323

Description

Proposal

Add a small official Semantic Kernel sample/docs example that integrates HOL Guard at the existing IFunctionInvocationFilter boundary. This is not a request for a new generic filter API.

Semantic Kernel already demonstrates that an invocation filter can prevent execution by not calling next(context) in the FunctionInvocationApproval sample. HOL Guard can use that same boundary to evaluate a function invocation locally before execution.

Suggested sample behavior

  • install/configure HOL Guard explicitly in the sample
  • register a HolGuardFunctionInvocationFilter : IFunctionInvocationFilter
  • send the function name + arguments to the local HOL Guard decision path before next(context)
  • allow -> call next(context) exactly once
  • deny -> return a blocked result and never execute the underlying function
  • review -> require an explicit host approval callback; otherwise fail closed
  • timeout/unavailable/malformed/ambiguous Guard response -> fail closed
  • keep HOL Guard Cloud optional; local-only use should work without a Cloud login

Existing implementation evidence

We already maintain a small Semantic Kernel adapter and real invocation-contract tests here: hashgraph-online/hol-guard-plugin#52

That proof is pinned against Semantic Kernel and tests allow/deny/review/unavailable paths, including zero downstream execution on deny. I’m proposing only an official Semantic Kernel sample/docs placement so users can discover and apply HOL Guard through the framework’s existing supported filter seam.

If this placement makes sense, I can follow the project’s fork-first workflow and keep the PR limited to the agreed sample/docs scope.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions