#!/usr/bin/env python3
REQUIRED={"api","agent_runtime","durable_state","tool_gateway","authorization","approval","observability","evaluation","recovery","rollback"}
unsafe={"api","agent_runtime","tool_gateway"}
production=set(REQUIRED)|{"mcp_gateway","audit_store"}

def validate(parts): return sorted(REQUIRED-parts)
missing=validate(unsafe); good=validate(production)
print('Unsafe architecture missing:',', '.join(missing))
print('Production architecture missing:',good)
assert missing and 'authorization' in missing and 'durable_state' in missing
assert good==[]
print('PASS: production architecture contains required control boundaries')
