- imSearchReset now receives setFieldsValue from useForm() instead of the
template ref instance method, which was unreliable for backfilling tenantId
- imUser/imSensitiveWord watches skip tenantId<=0 so reset no longer fires
policy-group/group requests that get rejected with empty tenant
- loadImTenantOptions wraps platform-branch TenantList in try/catch so a
failed request no longer aborts page initialization
BasicForm resetFields clears tenantId along with other fields, so the
auto-query after reset hit the empty-list guard (or was rejected by the
backend). Add a shared imSearchReset handler in imTenantOptions.ts that
refills the tenant select with its first option (bound users keep their
own tenant) before reloading, and wire it into the 9 IM list pages whose
reset did not already refill the tenant condition.
1. extract isTenantBound utility from user store logic
2. add disabled state to tenant select components across all IM pages
3. update policy tenant options logic to hide global option for bound tenants
4. add backend scope validation for IM admin operations