# PatchPilot v1.0.1

## Highlights

- Adds real Gemini-Wrapper file analysis for screenshots, images, PDFs, and DOCX files through the managed `gemini_webapi` Python bridge.
- Adds `create_pdf` and `create_docx` tools so PatchPilot can generate simple text documents from agent output.
- Adds a live provider-neutral todo panel in the TUI so longer agent runs show pending, active, and completed work.

## Fixed

- Fixed image inspection only returning metadata. With Gemini-Wrapper enabled, `inspect_document` now sends approved image files to Gemini Web as file inputs and returns visual analysis plus extracted visible text.
- Fixed escaped multiline file writes. `write_file` and line-range `edit_file` now normalize likely double-escaped code/HTML payloads before writing, preventing `\n` and `\"` from landing as literal one-line source.
- Fixed scanned/image-based PDF handling by falling back to Gemini-Wrapper file analysis when local `pdftotext` cannot extract text.
- Fixed false-positive image inspection results. If provider analysis fails and no OCR mode was requested, PatchPilot now reports metadata-only analysis as degraded instead of claiming the image was understood.
- Fixed approval-gated tools appearing stuck after approval by updating the visible run state immediately and executing tool calls sequentially.

## Improved

- Local document analysis is faster by default: PDFs use `pdftotext` and DOCX files are parsed directly before PatchPilot spends provider time. Images still use provider vision in `auto`, while `mode:"ocr"` keeps local OCR explicit.
- Gemini-Wrapper docs now explain the upstream `files=[...]` pipeline and the supported file formats.
- Providers can update visible run tasks through `update_todo`, with the active item animated in the transcript panel.

## Pull Requests

- #21 Improve file-edit reliability and Gemini-Wrapper document analysis.
