Retries Are Not a Recovery Strategy
Why bounded retries help with transient faults but cannot resolve unknown outcomes, partial workflows, or duplicated side effects in AI systems.
Why bounded retries help with transient faults but cannot resolve unknown outcomes, partial workflows, or duplicated side effects in AI systems.
A failed ingestion run should not stop retrieval while an accepted index remains queryable and eligible to serve.
Set a hard iteration limit on automatic function invocation and treat hitting it as an explicit application outcome.
How to generate text embeddings with Microsoft.Extensions.AI and keep the model, dimensions, comparison metric, and indexing behavior compatible.
A practical way to identify failure modes, choose explicit application behavior, and test an AI feature before its successful path hides the hard decisions.
How to place model access, prompts, retrieval, tools, and application policy behind a maintainable use-case boundary in a .NET application.
Keep runtime switches and adjustable operational settings in Azure App Configuration instead of requiring a deployment for every change.
Treat model-generated tool arguments as untrusted input even when they satisfy the generated schema and bind successfully to the expected C# types.
Use CORS to control browser-script access across origins, while enforcing API permissions with authentication and authorization.
Choose global and endpoint-specific request body limits instead of inheriting accidental defaults for uploads and APIs.