Skip to content

feat(projects): configure container build autoscaling - #634

Merged
ImLunaHey merged 1 commit into
mainfrom
luna/dep-5936-cli-autoscaling
Oct 16, 2026
Merged

ImLunaHey merged 1 commit into
mainfrom
luna/dep-5936-cli-autoscaling

Conversation

@ImLunaHey

@ImLunaHey ImLunaHey commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

Project commands can now configure the public API's container build autoscaling threshold and display its current value.

depot projects create my-project --max-concurrent-builds 3
depot projects update <project-id> --max-concurrent-builds 3
depot projects update <project-id> --disable-autoscaling
depot projects get <project-id> --output json
  • The threshold is concurrent builds per builder instance. Accept positive int32 values; reject invalid values and conflicting flags before authentication or API requests.
  • Omitted update flags preserve the setting. Disabling sends an explicit null to the API.
  • Create/get/update JSON includes max_concurrent_builds as a number or null. Get/update text includes “Builds per instance”.
  • Add 31 behavioral cases through the HTTP API boundary, covering request presence, null serialization, validation, authorization, and server response output.

Validation: full Go test suite, golangci-lint, formatting and dependency checks; GoReleaser snapshot builds for all 10 targets; npm formatting, type-check, and package build.


Note

Medium Risk
Touches project autoscaling configuration sent to the API, which affects builder scaling behavior, though changes are additive with validation and broad test coverage.

Overview
Adds CLI support for container build autoscaling on Depot projects: concurrent builds per builder instance before horizontal scaling kicks in.

depot projects create accepts optional --max-concurrent-builds (positive int; omitted leaves autoscaling off for new projects). depot projects update adds --max-concurrent-builds and --disable-autoscaling (mutually exclusive); omitting both leaves the current setting. Invalid values and conflicting flags are rejected before auth or API calls. Disable sends an explicit null via NullableInt32.

Get/create/update output now surfaces the setting: JSON field max_concurrent_builds (number or null), text line Builds per instance (or Disabled). README and command help/examples are updated accordingly.

New autoscaling_test.go exercises create/update requests, null serialization, output formats, and pre-auth validation; existing project tests are extended for the new update requirements and mock responses.

Reviewed by Cursor Bugbot for commit 2d719e7. Bugbot is set up for automated code reviews on this repo. Configure here.

@linear-code

linear-code Bot commented Oct 16, 2026

Copy link
Copy Markdown

DEP-5936

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Risk: medium. Cursor Bugbot completed successfully with no findings requiring human review, so this change is approved. The CLI autoscaling flags are additive with validation and tests, and they stay within the configured risk threshold.

Open in Web View Automation 

Sent by Cursor Approval Agent: Pull Request Router and Approver

@ImLunaHey
ImLunaHey merged commit 67a618f into main Oct 16, 2026
10 checks passed
@ImLunaHey
ImLunaHey deleted the luna/dep-5936-cli-autoscaling branch October 16, 2026 13:48
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