Vaulthalla Logo

Price Budgets

Configure global, provider, and vault-level price budgets for S3/R2 operations.

Price Budgets

Price budgets estimate provider cost before remote work runs. They can report, warn, or enforce global, provider-level, and vault-level limits.

Policy Levels

LevelScopeExample
GlobalAll priced storage operationsCap all S3/R2 sync work to a daily limit.
ProviderOne provider such as AWS S3 or Cloudflare R2Enforce tighter rules on AWS than R2.
VaultOne vaultGive a large archive vault its own run limit.

Supported provider keys include:

  • aws-s3
  • cloudflare-r2

Modes

ModeBehavior
offPolicy is disabled.
reportEstimate and record cost without warning or blocking.
warnWarn when limits are exceeded.
enforceBlock work that exceeds policy unless an approved override is consumed.

Start with report, move to warn, then move to enforce after the estimates match your expectations.

Limits

Common limits:

  • --max-run: maximum estimated cost for one operation or sync run.
  • --max-daily: maximum estimated cost per day.
  • --max-monthly: maximum estimated cost per month.
  • --currency: currency code, usually USD.

Examples:

1vh pricing budget set-global --mode warn --max-daily 5 --currency USD2vh pricing budget set-provider aws-s3 --mode enforce --max-run 1 --max-daily 103vh pricing budget set-vault archive --mode report --max-run 0.25

Catalog Freshness

Price estimates depend on pricing catalog data. Policy options can control catalog freshness:

1vh pricing budget set-global \2  --mode warn \3  --max-daily 5 \4  --allow-stale-catalog \5  --max-catalog-age 43200

Use stricter catalog verification for enforcement policies when stale pricing would be unacceptable.

Status And Ledger

List policies:

1vh pricing budget list

Check current status:

1vh pricing budget status

Read recent ledger entries:

1vh pricing budget ledger --limit 100

Disable policies:

1vh pricing budget disable-global2vh pricing budget disable-provider aws-s33vh pricing budget disable-vault archive

Web Console

Use the Cost Control page for interactive policy management. It exposes policy editors, status, ledger views, notifications, and override handling.

How Price Budgets Interact With Request Budgets

Request budgets and price budgets evaluate different risks:

  • Request budgets cap operation counts and downloaded bytes.
  • Price budgets cap estimated currency exposure.

A sync can pass one and fail the other. For example, a run might have few requests but high download cost, or many cheap requests that exceed the LIST budget. Use both for production S3/R2 vaults.

Enforcement Stalls

When price enforcement blocks work, the sync event should stop before remote work proceeds. Inspect:

1vh pricing budget status2vh pricing budget ledger --limit 503vh vault sync dry-run <vault>

If the run is intentional, raise the appropriate policy or approve an override through the operator flow.