The internal/system partial reversion makes assumption that the outcomes being rolled back is identical. This requires toSystem to reach the exact same outcome every run for any configuration. This is true as long as $TMPDIR and $XDG_RUNTIME_DIR does not change between these runs.
This potential divergence can be mitigated by encoding internal/env outcome in the state store, and recompute toSystem outcome if it differs. Such an implementation comes with non-negligible overhead though.
Since the priv side environment is considered trusted input, If such overhead is deemed unacceptable, this behaviour should be documented instead.
The `internal/system` partial reversion makes assumption that the outcomes being rolled back is identical. This requires `toSystem` to reach the exact same outcome every run for any configuration. This is true as long as `$TMPDIR` and `$XDG_RUNTIME_DIR` does not change between these runs.
This potential divergence can be mitigated by encoding `internal/env` outcome in the state store, and recompute `toSystem` outcome if it differs. Such an implementation comes with non-negligible overhead though.
Since the priv side environment is considered trusted input, If such overhead is deemed unacceptable, this behaviour should be documented instead.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
The
internal/systempartial reversion makes assumption that the outcomes being rolled back is identical. This requirestoSystemto reach the exact same outcome every run for any configuration. This is true as long as$TMPDIRand$XDG_RUNTIME_DIRdoes not change between these runs.This potential divergence can be mitigated by encoding
internal/envoutcome in the state store, and recomputetoSystemoutcome if it differs. Such an implementation comes with non-negligible overhead though.Since the priv side environment is considered trusted input, If such overhead is deemed unacceptable, this behaviour should be documented instead.