Skip to content

feat: generate PDF deliverables for deep research - #155

Merged
iamjr15 merged 1 commit into
mainfrom
feat/research-pdf-deliverables
Aug 4, 2026
Merged

feat: generate PDF deliverables for deep research#155
iamjr15 merged 1 commit into
mainfrom
feat/research-pdf-deliverables

Conversation

@iamjr15

@iamjr15 iamjr15 commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Summary

  • makes explicit deep-research and fan-out runs return a durable PDF deliverable by default
  • stores the same PDF in the live project workspace so it remains available from Files and slash file references
  • keeps quick factual research remote-only and projectless
  • updates the bundled Research skill and agent guidance so models consistently select the deterministic workflow

Architecture

The evidence-validated research workflow still owns search, provenance, and synthesis. After it succeeds, the top-level research tool deterministically converts that validated result into a structured document containing the narrative, claim-to-source evidence map, and authoritative source list. The existing PDF generator writes the file to the lazily resolved project workspace and durable generated-output storage, and the capability catalog emits it through the normal Deliverables stream.

Decisions Made

Decision Choice Alternatives considered Reasoning
PDF creation Generate inside the top-level research tools Ask the model to call a second document tool Makes delivery deterministic and prevents model-specific omissions
Workspace lifecycle Resolve the project after research succeeds Create a project when research begins Avoids leaving empty projects after provider or synthesis failures
Report content Package validated narrative, evidence map, and sources Render only the chat prose Keeps the downloadable report evidence-bound and independently useful
Quick research Leave direct search tools unchanged Generate a PDF for every lookup Preserves low latency for simple questions

Edge Cases Handled

Scenario Handling
Long reports Sections and paragraphs are bounded to the document schema limits
Repeated or unsafe filenames Existing normalized artifact filenames and unique output IDs remain authoritative
Missing project selection The existing lazy workspace resolver creates and attaches a project only when the PDF is ready
Cancellation after research The abort signal is checked before workspace and PDF work starts
Markdown report formatting Headings, links, lists, and tables are normalized into readable PDF sections

Verification

  • pnpm lint
  • pnpm typecheck
  • pnpm turbo build --force
  • pnpm deadcode
  • pnpm architecture:check
  • pnpm turbo skills:build
  • exercised the report converter with representative headings, citations, evidence, and sources
  • production Research flow after deployment

Make deep and fan-out research persist a cited PDF in the project and emit it as a deliverable.
Package the validated narrative, evidence map, and sources deterministically while keeping quick
research lightweight.
@iamjr15
iamjr15 merged commit 558e988 into main Aug 4, 2026
4 checks passed
@iamjr15
iamjr15 deleted the feat/research-pdf-deliverables branch August 4, 2026 21:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant