Repository navigation
Make the processing memory budget configurable in Settings - #997
Merged
Merged
Conversation
theatrus
force-pushed
the
codex/stack-memory-budget
branch
from
October 25, 2026 16:30
89d05b3 to
55520ac
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Color compositions and stretches could be refused by a fixed 50% memory budget with no way to change it in PSF Guard. Open Settings → Performance → Processing memory, choose a Memory budget from 5% to 100%, and release the slider, press Enter, or move focus to save. The panel shows the effective budget in GiB. New jobs use it without restarting the server; running jobs keep their current settings.
The default stays 50%. Settings persist in the registry over
[server].memory_budget_fraction, and the default button restores the config value. The existing worker planning and color/stretch admission checks all read the same policy. Errors now include the estimated requirement, effective budget, measured memory and Settings path. The memory basis is explicit: installed RAM on macOS, available RAM on Linux/Windows.The workers API adds the effective/default fraction and memory measurement. A missing memory field preserves the stored choice, including for older clients changing only CPU shares; null restores the config default. Registry reads and writes for that override occur under the existing registry lock.
Rebased onto merged #996 and remote-worker support from #998. Uses the published Seiza 0.44.0 / seiza-stacking 0.51.0 release. The release notes preserve all three features. The sign-in browser-test race fix is already included through #996.
Checks run locally on the rebased head:
cargo fmt --all -- --checkcargo clippy --workspace --all-targets --all-features --locked -- -D warningscargo test --workspace --locked: 3,414 passed, 13 ignored;cargo build --lockedscripts/e2e-local.mjs: 6 passed, Chromium + WebKit, desktop/phone, keyboard editing, persistence across reload, preserving CPU shares, older-client updates, restoring defaults, rejecting out-of-range values and horizontal overflow; combined narrowband/RGB-star controls and delayed account preferences after sign-ingit diff --check; screenshots inspectedPhone control