fix(controlplane): stop masking transient org-lookup errors as not found
Summary
MembershipRepo.FindByOrgNameAndUser masked any non-NotFound failure of the organization query as a fabricated "organization not found" error that was neither a biz.NotFound nor a wrap of the real cause. This discarded the underlying DB error and made ContextService.Current return a captured gRPC 500 for what was actually a transient failure against an organization that exists.
Now only ent.IsNotFound maps to biz.NewErrNotFound; every other error is returned wrapped with %w, so the true root cause (SQLSTATE, statement/pool timeout, context cancellation) reaches logs and Sentry with an accurate fingerprint. The client-facing masking is unchanged — it still happens downstream in handleUseCaseErr/LogAndMaskErr, so the internal error is never exposed to the client. A genuinely missing organization still returns biz.NotFound and degrades gracefully.
Fixes PFM-6775. Root-cause fix for PFM-6773.
AI assistance
This change was produced with the assistance of Claude Code.