# In-repo device runtime profile for first-party GPU host ops.
# Requires building gc_effects with `--features gpu-device-backend`.
#
# Fail-closed profile:
# - device backend is required
# - if unavailable, ops return sealed errors (no fallback)

allow = [
  "gpu/compute::submit",
  "gpu/compute::limits",
  "gpu/compute::features",
  "gfx/gpu::submit-frame-graph",
  "gfx/gpu::limits",
  "gfx/gpu::features",
]

[op."gpu/compute::submit"]
gpu_backend = "device-runtime"
gpu_backend_policy = "require-device"

[op."gpu/compute::limits"]
gpu_backend = "device-runtime"
gpu_backend_policy = "require-device"

[op."gpu/compute::features"]
gpu_backend = "device-runtime"
gpu_backend_policy = "require-device"

[op."gfx/gpu::submit-frame-graph"]
gpu_backend = "device-runtime"
gpu_backend_policy = "require-device"

[op."gfx/gpu::limits"]
gpu_backend = "device-runtime"
gpu_backend_policy = "require-device"

[op."gfx/gpu::features"]
gpu_backend = "device-runtime"
gpu_backend_policy = "require-device"
