Skip to content

configstore: drop dead/footgun per-org Org columns (memory_budget, idle_timeout_s, worker_*_request)#825

Merged
benben merged 1 commit into
mainfrom
ben/configstore-prune-org-columns
Jun 29, 2026
Merged

configstore: drop dead/footgun per-org Org columns (memory_budget, idle_timeout_s, worker_*_request)#825
benben merged 1 commit into
mainfrom
ben/configstore-prune-org-columns

Conversation

@benben

@benben benben commented Jun 29, 2026

Copy link
Copy Markdown
Member

Follow-up to #822 (which squash-merged before these landed — hence a separate PR + a new migration 000005, since 000004 is already merged/applied).

Removes four duckgres_orgs columns:

  • memory_budget, idle_timeout_s — dead: only copied into the snapshot OrgConfig + shown in admin OrgStatus; nothing reads them to drive behavior.
  • worker_cpu_request, worker_memory_requestfootgun: org_router applied the per-org value to the shared worker pool (SetWorkerResources), so one org's setting changed pod sizing for every org (last-org-wins). Legit per-org sizing stays via default_worker_cpu/memory + client GUCs; the deployment-wide K8sConfig.WorkerCPURequest/MemoryRequest (charts/env, read in worker_profile.go) is a different field and is untouched.

Removes the two SetWorkerResources footgun blocks from org_router (createOrgStack + HandleConfigChange); the pool method stays (still unit-tested). New migration 000005 drops the columns (Down re-adds); updates the OrgConfig snapshot view, admin OrgStatus, seed SQL, and tests (incl. the goose version-parity assertion → 5).

Verified: go build ./..., go build -tags kubernetes ./controlplane/... ./cmd/..., all test binaries compile (both tag sets), configstore unit tests pass. Postgres/e2e in CI.

🤖 Generated with Claude Code

Removes four duckgres_orgs columns:
- memory_budget, idle_timeout_s — dead: only copied to the snapshot OrgConfig +
  shown in admin OrgStatus; no behavioral reader.
- worker_cpu_request, worker_memory_request — footgun: org_router applied the
  per-org value to the SHARED worker pool (last-org-wins pod sizing across all
  orgs). Per-org sizing stays via default_worker_cpu/memory + client GUCs; the
  deployment-wide K8sConfig.WorkerCPURequest/MemoryRequest (charts/env) is a
  separate, kept field.

Drops the two SetWorkerResources footgun blocks from org_router; new migration
000005 drops the columns (Down re-adds); updates OrgConfig snapshot view, admin
OrgStatus, seeds, and tests.

Split out of #822 (which squash-merged before this landed): same configstore
cleanup, new migration version since 000004 is already merged/applied.
@github-actions

Copy link
Copy Markdown

Test Impact Plan

Deterministic summary of how this PR changes tests, CI runners, and coverage-risk signals.

Summary

Area Added Changed Deleted
Test files 0 4 0
E2E/journey files 0 0 0
Workflow files 0 0 0

Signals

  • Test cases: +0 / -0
  • Assertions: +0 / -3
  • Skips or known failures added: 0
  • Workflow continue-on-error added: 0
  • Workflow path filters added: 0
  • Test commands removed from justfile: 0
  • E2E/journey retry lines added: 0

Coverage risk: needs review

Warnings

  • Assertions removed (needs review)
    • 3 removed vs 0 added

@benben benben merged commit 91ab5bf into main Jun 29, 2026
27 checks passed
@benben benben deleted the ben/configstore-prune-org-columns branch June 29, 2026 13:58
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