Skip to content

fix(files): stop saving fetched URLs to Files and look names up by the unique index - #8327

Merged
waleedlatif1 merged 3 commits into
stagingfrom
fix/file-block-stop-saving-fetched-urls
Sep 26, 2026
Merged

waleedlatif1 merged 3 commits into
stagingfrom
fix/file-block-stop-saving-fetched-urls

Conversation

@waleedlatif1

Copy link
Copy Markdown
Collaborator

Summary

  • The File block's URL fetch no longer saves every fetched URL into workspace Files. Nothing ever read the saved copy: the parser keeps its own execution file, and the reuse the save once served was removed earlier. Repeated fetches were piling up name (N).html copies in the Files root
  • Renamed fetchExternalUrlToWorkspace to fetchExternalUrl and removed its save, permission, and upload branch
  • Name existence checks (fileNameExistsInWorkspaceFolder, getWorkspaceFileByName) now spell the folder predicate as coalesce(folder_id, '') = $folder, matching the unique (workspace_id, coalesce(folder_id, ''), original_name) index, so each check is a point lookup. The old folder_id IS NULL form made root lookups scan the folder-id index
  • allocateUniqueWorkspaceFileName probes the base name plus (1)…(20), then falls back to a short-id suffix instead of probing up to 1,000 candidates and then failing. The unique index and the existing conflict retry remain the authority

Type of Change

  • Bug fix

Testing

  • New file-names.integration.ts (real Postgres). All three tests fail on the pre-change code:
    • parsing a URL creates no workspace_files row
    • root/folder scoping, with an EXPLAIN assertion that both lookups use the unique index
    • the 21st copy of a name gets a short-id suffix, and concurrent uploads of one name all succeed with distinct names
  • Existing file-versions, provenance, revision, storage-cleanup, and workspace-import integration suites pass
  • Type-check, lint, and check:audits pass

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 26, 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 26, 2026 8:18pm UTC

Request Review

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 9 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

@greptile-apps

greptile-apps Bot commented Sep 26, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 5/5

[Medium risk] Refactors file naming and URL fetching logic.

The PR appears safe to merge based on the changes since the previous review.

Summary

The PR stops persisting fetched URLs as workspace Files, uses the unique-index expression for name lookups, and bounds numbered filename allocation before using a short-ID suffix. Since the previous review, the URL-fetch helper was relocated and its imports and mocks were updated.

Reviews (3) · Last reviewed commit: "refactor(uploads): move the external URL..."

@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@greptile

@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 26, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@waleedlatif1 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 11 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@greptile

@waleedlatif1

Copy link
Copy Markdown
Collaborator Author

@cubic-dev-ai review this PR

@cubic-dev-ai

cubic-dev-ai Bot commented Sep 26, 2026

Copy link
Copy Markdown
Contributor

@cubic-dev-ai review this PR

@waleedlatif1 I have started the AI code review. It will take a few minutes to complete.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 15 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

@waleedlatif1
waleedlatif1 merged commit ce88d8a into staging Sep 26, 2026
32 checks passed
@waleedlatif1
waleedlatif1 deleted the fix/file-block-stop-saving-fetched-urls branch September 26, 2026 21:29

This branch was successfully deployed

1 active deployment
Preview — 4d2c6b38 Deployed Sep 26, 2026 by vercel[bot]
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