Skip to content

Disable reducer arg broadcast #2694

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

suirad
Copy link

@suirad suirad commented May 2, 2025

Description of Changes

By default, reducer callbacks are broadcasted to all clients of the module. This PR adds a command line flag to spacetime start that when given, disables reducer arguments from being sent along with the reducer callback. It does so by swapping out the Args struct to the null version of it.

Potentially solves #1837 or at least it could temporarily.

API and ABI breaking changes

None; adds an optional command line flag to spacetime start to enable new behavior. --no-reducer-args

Expected complexity level and risk

Level is about 2. The change is pretty trivial, however the depth of that change to make it command line configurable adds a bit of complexity. There may be some unknowns that I am not aware of by not broadcasting the full args of reducers to other clients. This is mostly why I didn't make a more substantive change.

Testing

Successfully ran the repo test suite.

Additional tests against existing projects and a project to specifically to demonstrate the corrected behavior via extracting passwords from third party reducer args was done by @Lethalchip. See below images:

Setup

image
image

Use Case

image

Results

image
image

@suirad suirad force-pushed the censor-reducer-args branch from 83ef792 to 2cc6e17 Compare May 2, 2025 20:58
@CLAassistant
Copy link

CLAassistant commented May 2, 2025

CLA assistant check
All committers have signed the CLA.

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.

2 participants