e2a05a108a
This commit introduces the `analyze` module, which orchestrates communication with Large Language Models (LLMs) for text summarization and analysis. Key components include: - `llm.rs`: Contains the `LlmError` enum and the `chat_once` function for interacting with OpenAI-compatible LLM APIs. - `prompt.rs`: Defines the system prompt and logic for rendering user content from analysis inputs. - `recovery.rs`: Implements logic to scan for and re-enqueue pending analysis jobs upon server startup. - `worker.rs`: The core worker that consumes analysis jobs, processes them with the LLM, and writes the output. - `mod.rs`: Defines `AnalyzeJob` and associated channel types for inter-component communication. This module enables the server to process dictated recordings, summarize them using an LLM, and store the results.