Skip to content

fix(files): persist large Agiloft and Cursor v2 downloads - #7660

Open
BillLeoutsakosvl346 wants to merge 1 commit into
stagingfrom
fix/platform-large-file-outputs
Open

fix(files): persist large Agiloft and Cursor v2 downloads#7660
BillLeoutsakosvl346 wants to merge 1 commit into
stagingfrom
fix/platform-large-file-outputs

Conversation

@BillLeoutsakosvl346

Copy link
Copy Markdown
Contributor

Summary

  • Store Agiloft attachments and Cursor v2 artifacts before the internal JSON response, preserving canonical file metadata through transforms.
  • Keep Cursor v1 base64 output, existing download limits, image normalization, and trusted execution/Copilot storage ownership unchanged.
  • Correct file-output authoring guidance; keep the shared response limit unchanged.

Type of Change

  • Bug fix

Testing

  • 277 tests passed across provider operations/handlers, real 8 MiB file-output boundaries, file processing, and tool execution.
  • App typecheck, full lint, all 46 audits, base-relative block-registry audit, artifact generators, docs-manifest check, and diff check passed.
  • Provider and storage boundaries mocked; no live-provider or browser certification.

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

@vercel

vercel Bot commented Sep 9, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
docs Ready Ready Preview Sep 9, 2026 6:03pm UTC

Request Review

@greptile-apps

greptile-apps Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

RetriggerView in GreptileConfidence Score: 5/5

The PR appears safe to merge; the large-download persistence paths remain bounded, preserve versioned contracts, and use trusted storage authority.

Summary

  • Preserves Cursor v1's versioned base64 response contract.
  • Selects execution or Copilot storage using trusted operation context.
  • Centralizes stored-image metadata normalization.
  • Adds boundary coverage for large downloads, ownership selection, storage failures, and file-processor pass-through.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  A[Agiloft attachment or Cursor v2 artifact] --> B[Bounded, DNS-pinned download]
  B --> C[Normalize filename and MIME metadata]
  C --> D{Complete execution scope?}
  D -->|Yes| E[Upload execution file]
  D -->|No, trusted user present| F[Upload Copilot file]
  D -->|No authority| G[Return authorization error]
  E --> H[Canonical UserFile]
  F --> H
  H --> I[Compact internal JSON response]
  I --> J[Tool response transform]
  J --> K[FileToolProcessor pass-through]
Loading

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