Skip to content

Fix status redaction and leader election lease validity#175

Merged
GatewayJ merged 1 commit into
rustfs:mainfrom
GatewayJ:fix/backlog-1074-1076
Jul 11, 2026
Merged

Fix status redaction and leader election lease validity#175
GatewayJ merged 1 commit into
rustfs:mainfrom
GatewayJ:fix/backlog-1074-1076

Conversation

@GatewayJ

Copy link
Copy Markdown
Member

Type of Change

  • New Feature
  • Bug Fix
  • Documentation
  • Performance Improvement
  • Test/CI
  • Refactor
  • Other:

Related Issues

Related: rustfs/backlog#1073, rustfs/backlog#1074, rustfs/backlog#1076

Summary of Changes

This PR fixes two current audit findings and verifies the third is already addressed on current main.

  • Harden status message redaction so non-ASCII UTF-8 input is scanned on character boundaries instead of byte offsets.
  • Preserve redaction for Unicode quoted values and Unicode whitespace after sensitive keys.
  • Align leader election slow-path takeover checks with local observation time instead of remote renew_time, avoiding clock-skew-induced early takeover.
  • Split remote record observation from local create/update acknowledgement so unchanged remote records do not refresh observed_time, while local writes still refresh the acknowledged observed state.
  • Keep the existing user credential rotation fix for rustfs/backlog#1073 covered by the provisioning tests on current main.

Checklist

  • I have read and followed the CONTRIBUTING.md guidelines
  • Passed make pre-commit (fmt-check + clippy + test + console-lint + console-fmt-check)
  • Added/updated necessary tests
  • Documentation updated (if needed)
  • CHANGELOG.md updated under [Unreleased] (if user-visible change)
  • CI/CD passed (if applicable)

Impact

  • Breaking change (CRD/API compatibility)
  • Requires doc/config/deployment update
  • Other impact: fixes status redaction safety and leader election lease-validity behavior

Verification

cargo test -p kube-leader-election
cargo test -p operator status::tests --lib
cargo test -p operator provisioning::tests --lib
make pre-commit

Additional Notes

The PR is opened as a draft until upstream CI completes.


Thank you for your contribution! Please ensure your PR follows the community standards (CODE_OF_CONDUCT.md) and sign the CLA if this is your first contribution.

@GatewayJ GatewayJ marked this pull request as ready for review July 11, 2026 03:32
@GatewayJ GatewayJ added this pull request to the merge queue Jul 11, 2026
Merged via the queue into rustfs:main with commit b176221 Jul 11, 2026
3 checks passed
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