Multi-objective prompt analysis and failure-grounded prompt suggestions.
Pareto analysis compares eligible prompt versions across pass rate, cost per passed test, and latency per passed test. Reflection builds bounded evidence from failed suite results, generates a variable-preserving suggestion, and requires an explicit accept or dismiss transition.
Summary
Functions
@spec accept_suggestion(binary(), binary() | nil) :: {:ok, Aludel.Prompts.PromptSuggestion.t()} | {:error, term()}
@spec create_suggestion(map()) :: {:ok, Aludel.Prompts.PromptSuggestion.t()} | {:error, Ecto.Changeset.t()}
@spec dismiss_suggestion(binary(), binary() | nil) :: {:ok, Aludel.Prompts.PromptSuggestion.t()} | {:error, term()}
@spec generate_suggestion(binary(), binary(), binary()) :: {:ok, Aludel.Prompts.PromptSuggestion.t()} | {:error, term()}
@spec list_suggestions(binary()) :: [Aludel.Prompts.PromptSuggestion.t()]