Skip to content

RFC-013: Inter-Gandalf Delegation Protocol (IMDP) — 7. Governance

AIGP SpecificationRFC-013: Inter-Gandalf Delegation Protocol (IMDP) › 7. Governance

← 6. Protocol Messages · Section index · 8. Anti-Patterns →

7. Governance

Every delegation is an AIGP-governed AI operation. The delegation itself not just the work performed by the delegate is subject to governance.

7.1 Pre-Delegation AIGP Check

Before sending a DELEGATE message, the originator MUST send an AIGP REQUEST:

{
"protocol_version": "1",
"message_type": "REQUEST",
"app_id": "identity-service",
"request_id": "req-del-1714900000000",
"use_case": "gandalf_delegation",
"model_id": "N/A",
"delegation_metadata": {
"originator": "identity-service",
"delegate": "analytics-service",
"capability_id": "policy_conversion",
"delegation_depth": 1
}
}

governance-server evaluates:

  • Is identity-service allowed to delegate to analytics-service?
  • Is policy_conversion an allowed delegation target?
  • Is the delegation depth within limits?
  • Is the originator’s budget sufficient for the estimated cost?

7.2 Post-Delegation AIGP Record

After receiving DELEGATE_RESULT, the originator MUST send an AIGP RECORD:

{
"protocol_version": "1",
"message_type": "RECORD",
"app_id": "identity-service",
"request_id": "req-del-1714900000000",
"use_case": "gandalf_delegation",
"timestamp": "2026-05-04T10:01:00Z",
"duration_ms": 45200,
"status": "SUCCESS",
"tokens": {
"input_tokens": 12400,
"output_tokens": 3200,
"total_tokens": 15600
},
"delegation_metadata": {
"delegation_id": "del-1714900000000-abc",
"originator": "identity-service",
"delegate": "analytics-service",
"capability_id": "policy_conversion",
"delegation_depth": 1,
"sub_delegations": 0
}
}

7.3 Delegation Policy Schema

governance-server maintains delegation policies that control which Gandalfs can delegate to which:

{
"policy_id": "pol-delegation-001",
"rule_type": "DELEGATION_POLICY",
"config": {
"allowed_delegations": [
{
"originator": "identity-service",
"delegate": "analytics-service",
"capabilities": ["policy_conversion", "gap_analysis"]
},
{
"originator": "identity-service",
"delegate": "governance-server",
"capabilities": ["compliance_check"]
},
{
"originator": "analytics-service",
"delegate": "runbook-service",
"capabilities": ["artifact_generation"]
},
{
"originator": "*",
"delegate": "governance-server",
"capabilities": ["compliance_check", "cost_analysis"]
}
],
"max_delegation_depth": 2,
"max_concurrent_delegations_per_originator": 3
}
}

← 6. Protocol Messages · Section index · 8. Anti-Patterns →