LLM logging, model upgrade, image serving#12
Merged
nicpottier merged 5 commits intomainfrom Feb 10, 2026
Merged
Conversation
…d context-based validators - Add token-bucket rate limiter for global LLM call throttling - Make per-call timeout configurable via config.yaml (default 180s for web rendering) - Move concurrency from per-step to global config setting (default 32) - Use z.string() instead of z.enum() in LLM schemas with conversational validation feedback - Extract <section> tag in HTML validation, return cleaned output via ValidationResult.cleaned - Pull context out of prompt as top-level field on GenerateObjectOptions - Pass context to validate callbacks, replacing closure-based validators with standalone functions
…g, and image serving route - Add per-attempt LLM logging with requestId UUID grouping retry attempts - Switch default model from gpt-4o to gpt-5.2 across all pipeline steps - Increase web rendering max retries from 8 to 25 - Remove DB migration code (throw on schema mismatch instead) - Remove duplicate data-id validation in HTML validation - Rewrite image src attributes to server URLs during HTML validation - Add GET /books/:label/images/:imageId route to serve extracted images as PNG - Thread book label through render pipeline for image URL construction
amoghbanta
added a commit
that referenced
this pull request
Feb 10, 2026
Integrates pipeline team changes (PR #12 llm-updates): - Rate limiting, per-attempt LLM logging, single-arg appendLlmLog API - Schema version mismatch detection (needsRebuild/rebuildReason) - Image src rewriting, configurable timeouts, validation improvements Conflict resolutions: - book-service.ts: main's error handling + our publisher/languageCode fields - pipeline-runner.ts: main's rateLimiter + single-arg API + our SSE llm-log emit - BookCard.tsx: kept deleted (inlined in index.tsx BookRow) - books.$label.index.tsx: our 2-column layout + main's needsRebuild UI
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
requestIdUUID, enabling tracing of retry sequencesgpt-4otogpt-5.2across all pipeline stepssrcattributes to server-resolvable URLs (/api/books/{label}/images/{imageId})GET /api/books/:label/images/:imageIdto serve extracted images as PNG binariesdata-idenforcement (LLMs may reuse IDs legitimately)Test plan
pnpm test)pnpm build)GET /api/books/{label}/images/{imageId}returns PNG data