Problem
Two fundamental architectural asymmetries (Issue #65, P6):
- RCM syntax has no way to express Policy logic —
policy = "captain" is just a string name, no customization hooks
- gRPC takes the opposite approach — no Policy at all, client drives step-by-step manually
The asymmetry means:
- Custom policies can only be added in Rust code, not declared in .rcm
- gRPC clients must re-implement Policy decision logic from scratch
- There is no shared "Policy spec" that both paths could consume
Questions to resolve
- Should RCM gain a policy declaration DSL (decision rules, phase ordering, retry params)?
- Should gRPC gain a Policy configuration (e.g. OpenRequest gets a policy spec)?
- Or should both converge to a simpler model — remove Policy from RCM entirely, make gRPC the only decision path?
This is an HITL issue — requires design discussion before implementation.
Parent: #65
Problem
Two fundamental architectural asymmetries (Issue #65, P6):
policy = "captain"is just a string name, no customization hooksThe asymmetry means:
Questions to resolve
This is an HITL issue — requires design discussion before implementation.
Parent: #65