feat(files): surface file versions in the File block and logs, with conditional writes - #8056
Conversation
…onditional writes
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
|
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
All reported issues were addressed across 27 files
Reply with feedback, questions, or to request a fix.
Fix all with cubic | Re-trigger cubic
…nal write with no target
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
… publish it on metadata
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
All reported issues were addressed across 39 files
Reply with feedback, questions, or to request a fix.
Fix all with cubic | Re-trigger cubic
…omit an absent revision
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
All reported issues were addressed across 39 files
Reply with feedback, questions, or to request a fix.
Fix all with cubic | Re-trigger cubic
|
@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 review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
All reported issues were addressed across 41 files
You've manually re-run cubic several times on this PR. Each manual re-review checks the full PR again and counts toward your usage quota. To preserve your usage limits, we recommend letting cubic automatically review new commits.
Fix all with cubic | Re-trigger cubic
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
No issues found across 42 files
Confidence score: 5/5
- Automated review surfaced no issues in the provided summaries.
- No files require special attention.
You've manually re-run cubic several times on this PR. Each manual re-review checks the full PR again and counts toward your usage quota. To preserve your usage limits, we recommend letting cubic automatically review new commits.
Re-trigger cubic
|
Addressed both findings from the outside-diff list:
|
|
@cubic-dev-ai review this PR |
@waleedlatif1 I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
No issues found across 42 files
Confidence score: 5/5
- Automated review surfaced no issues in the provided summaries.
- No files require special attention.
You've manually re-run cubic several times on this PR. Each manual re-review checks the full PR again and counts toward your usage quota. To preserve your usage limits, we recommend letting cubic automatically review new commits.
Re-trigger cubic
Summary
versiontheir write recorded, and Get File reports the version it read; a file created with its content is version 1<file.version>expectedRevision— the opaque token Get File and every write return — and refuse the write when the content moved on. It maps onto the content guard the storage layer already enforces under its row lock, so the check is atomic and costs no extra readexpectedRevisionon a write requiresoverwrite: true, refused at parse time rather than after uploading bytes and creating foldersVersion numbers deliberately do NOT drive the precondition: collaborative and workflow writes coalesce into the current version rather than adding one, so the same number can name different bytes. The revision is
contentUpdatedAt, which advances on every content write.Everything is additive and optional: no field changes shape for existing callers, old log rows without a version still parse and render, no subblock ids changed, and earlier File block generations are untouched. An unconditional write reads nothing extra.
Type of Change
Testing
Checklist