Skip to content

Add files API#1893

Merged
djeebus merged 151 commits intomainfrom
add-files-api
Mar 4, 2026
Merged

Add files API#1893
djeebus merged 151 commits intomainfrom
add-files-api

Conversation

@djeebus
Copy link
Contributor

@djeebus djeebus commented Feb 11, 2026

TODO:

  • combine the "token" endpoint functionality into "get volume"
  • add tests to entryInfo helper functions
  • retry orchestrator errors that indicate "volume type unknown"
  • sdk integration testing
  • assign files "volume" user and "volume" group by default
  • centralize tryParseUUID, refactor to use it
  • add rotation support
  • asymmetric by default
  • if volume type unknown error occurs, only log once, not once per orchestrator

later:

  • follow up later with jwks
  • unify delete function

Note

High Risk
Introduces new token-signing configuration and changes how persistent volumes are provisioned/mounted and accessed (Filestore/NFS + proxy pathing), which can impact security and data availability if misconfigured. Also adds substantial new orchestrator I/O surface area that needs careful validation and rollout.

Overview
Adds a first-pass “files API” for volumes by extending the orchestrator volume service with filesystem-style operations (stat/list/create/update/delete for files and dirs) and wiring the API to mint and return a signed per-volume content token on volume create/get responses. Deployment/IaC is updated to support persistent volume types on GCP (new Filestore-backed mounts, configurable NFS version, and propagated volume/token env vars), and the NFS proxy is hardened and reworked to mount by teamID/volumeID with improved jail/path validation and expanded e2e coverage.

Written by Cursor Bugbot for commit 6d92ec6. This will update automatically on new commits. Configure here.

# Conflicts:
#	packages/api/internal/api/api.gen.go
@djeebus djeebus marked this pull request as draft February 11, 2026 17:20
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 427d2ec5d6

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

Copy link
Member

@mishushakov mishushakov left a comment

Choose a reason for hiding this comment

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

I am thinking we can find some way to unify Volume entries + Dir entries, so it's same struct regardless if it's from stat or from list

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 3 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

@dobrac dobrac added the feature New feature label Mar 4, 2026
# Conflicts:
#	iac/modules/job-orchestrator/main.tf
#	iac/provider-gcp/nomad/main.tf
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 4 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 3 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 3 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Copy link
Contributor

@dobrac dobrac left a comment

Choose a reason for hiding this comment

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

lgtm!

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

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

Cursor Bugbot has reviewed your changes and found 2 potential issues.

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

@djeebus djeebus merged commit 926ced6 into main Mar 4, 2026
36 checks passed
@djeebus djeebus deleted the add-files-api branch March 4, 2026 22:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature New feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants