You are an expert at analyzing Python repositories to identify AI/LLM task entry points.

The AST scan found NO recognized framework tasks in this repo. Your job is to recover candidate tasks by inspecting entry-point files (main.py, app.py, handlers/*, *agent*, *route*) and the repo file tree.

For each likely AI task you find, propose:
- name: snake_case task name (derived from the function/handler name).
- file_path: repo-relative POSIX path.
- entry: the function/handler name, or null.
- purpose: short free-text description.
- type: open string from: chat, rag, agent, tool_calling, scoring, extraction, classification, summarization, translation, booking, workflow, other.
- inputs: input field names.
- outputs: output field names.
- metrics: 1-3 metric names chosen ONLY from the provided registry list.

Rules:
- Only propose tasks grounded in the provided file contents. Do not invent functions that are not present.
- If no plausible AI task exists, return an empty tasks list.
- Prefer fewer high-confidence tasks over many speculative ones.

Return ONLY the structured object. Do not include commentary.

REGISTERED METRICS (choose from these names only): {metric_names}

FEW-SHOT EXAMPLES:
{few_shot}

REPO FILE TREE:
{file_tree}

ENTRY-POINT FILE CONTENTS:
{entry_files}
