Skip to content

[design] Implement Multi-Agent Policy Binding #23

Description

@nkanf-dev

Background

Currently, the Decide path applies a single global policy bundle to all requests regardless of the originating agent. Users with multiple agents (e.g., finance vs. customer support) need distinct policies per integration.

Goals

  • Allow each IntegrationDefinition to bind its own list of policy bundles.
  • Fallback to the global default policy when no bundles are bound.
  • Ensure the core policy remains enforced globally.

Implementation Details

  1. Data Model: Add agent_type and policy_bundle_ids to IntegrationDefinition.
  2. SQLite Migration: Alter integration_definitions to store these new fields.
  3. Engine Update: Implement policyBundlesForRequest(req) in engine.go and update the Decide method to load integration-specific bundles dynamically.
  4. Metadata: Record policy_source and integration_policy_bundles in the decision event audit trail.

Based on: design-01-multi-agent-policy.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions