`NameError` from `inspect.signature()` or `obj.__annotations__` for types present only in `TYPE_CHECKING` block

Summary The issue arises when using inspect.signature() or obj.__annotations__ to get a function signature as a string, resulting in a NameError. This error occurs because the type TracebackType is only defined within a TYPE_CHECKING block, which is not evaluated at runtime. Root Cause The root cause of this issue is that the TYPE_CHECKING block is … Read more

Pylance reporting errors on libraries with dynamic imports such as Cocoa or Quartz from pyobjc

Summary Pylance, a popular Python language server, incorrectly flags errors on libraries with dynamic imports, such as pyobjc modules like Cocoa and Quartz. This issue arises because Pylance cannot resolve symbols imported dynamically at runtime, leading to false positives in static analysis. Root Cause Pylance relies on static type analysis, which fails to interpret dynamic … Read more

Asp.net Web Form Ajax to Pass data from aspx to code behind

Summary This incident involved an ASP.NET Web Forms AJAX call that never reached the static WebMethod in the code‑behind. The client‑side button click executed, the AJAX request fired, but the server method was never invoked. The failure stemmed from classic Web Forms constraints around page methods, script manager configuration, and control runat=server behavior. Root Cause … Read more

Microsoft Graph – eDiscovery purges

Summary The issue involves Microsoft Graph eDiscovery purges not removing emails from mailboxes despite the operation reporting success. The process follows Microsoft’s documented steps for creating a case, search, and purge, but the targeted message remains in the mailbox. Root Cause The root cause is incorrect interpretation of the purge operation’s scope. The purge operation … Read more

Docker apt install package that requires license agreement

Summary Issue: Docker build stalls during apt install ttf-mscorefonts-installer due to a license agreement prompt requiring user input. Impact: Automated builds fail, requiring manual intervention post-container creation. Root Cause The ttf-mscorefonts-installer package requires explicit acceptance of its license terms during installation. The -y flag in apt install does not bypass this prompt, causing the build … Read more

Kubernetes (kind) pod cannot resolve service in another namespace (DNS not working)

Summary Cross-namespace service resolution failed in a Kind Kubernetes cluster due to missing DNS configuration for cross-namespace lookups. Pods in the prod namespace could not resolve the svc-test service in the test namespace despite valid services and endpoints. Root Cause The issue stemmed from CoreDNS not being configured to handle cross-namespace DNS queries by default … Read more

CanActivate and SSR In Angular 21

Summary This incident involved an Angular 21 application where a CanActivate guard incorrectly redirected authenticated users when navigating directly to a route (e.g., /home). The issue occurred only during Server-Side Rendering (SSR), even though a valid token existed in localStorage. Root Cause The guard relied on localStorage, which is not available during SSR. Because Angular … Read more

How to clean the LD_LIBRARY_PATH variable and set a new one without conflicts?

Summary This postmortem analyzes a common environment‑level failure: LD_LIBRARY_PATH pollution causing subtle runtime conflicts in robotics stacks that mix ROS 2, Isaac Sim, CUDA, and vendor‑specific plugins. The system “worked” at first glance, but hidden library‑resolution collisions broke downstream functionality such as LiDAR /scan topics. Root Cause The underlying issue was residual library paths from … Read more

Does Google Ad Manager support codeless ad units for React Native or native mobile apps?

Summary The question revolves around the feasibility of using codeless ad units in mobile apps, specifically with Google Ad Manager (GAM), for platforms like React Native, Android, and iOS. The inquiry aims to clarify whether codeless ad units are strictly limited to web pages or if there’s support or a workaround for mobile applications. Root … Read more