← API reference
CANONICAL TYPE REFERENCE

ControllerPolicyState

Per-controller IO/exec allowlists pushed alongside edgeApps on config.update (hybrid-bridge §35). Default-deny on first boot — a controller with no policy row receives empty lists, which the bridge treats as 'reject everything'.

Unique identifier

Controller this policy applies to

allowedIoPaths[String!]!

Prefix-allowlist consulted by bridge.io.* and the local.file RPC. Empty list = deny all IO.

Absolute-path allowlist consulted by bridge.exec.run. Empty list = deny all exec.

createdAtString!

Creation timestamp (ISO8601)

updatedAtString!

Last update timestamp (ISO8601)

View exact SDL
"""
Per-controller IO/exec allowlists pushed alongside edgeApps on config.update (hybrid-bridge §35). Default-deny on first boot — a controller with no policy row receives empty lists, which the bridge treats as 'reject everything'.
"""
type ControllerPolicyState @iac_resource(name: "controller_policy") @iac_ops(create: "createControllerPolicy", read: "getControllerPolicy", update: "updateControllerPolicy", delete: "deleteControllerPolicy") {
  """Unique identifier"""
  id: ControllerPolicyID! @iac_identity(assignedBy: SERVER) @iac_computed
  """Controller this policy applies to"""
  controllerId: ControllerID! @iac_ref(resource: "controller")
  """
  Prefix-allowlist consulted by bridge.io.* and the local.file RPC. Empty list = deny all IO.
  """
  allowedIoPaths: [String!]!
  """
  Absolute-path allowlist consulted by bridge.exec.run. Empty list = deny all exec.
  """
  allowedExecBinaries: [String!]!
  """Creation timestamp (ISO8601)"""
  createdAt: String! @iac_computed
  """Last update timestamp (ISO8601)"""
  updatedAt: String! @iac_computed
}

One stable address across all schema views. Follow a field’s type to explore connections between domains.