Skip to content

test: add fee-recipient compromise response runbook (closes #87) - #154

Open
Degentle12 wants to merge 3 commits into
StellarTips:mainfrom
Degentle12:fix/issue-87-fee-recipient-compromise-test
Open

test: add fee-recipient compromise response runbook (closes #87)#154
Degentle12 wants to merge 3 commits into
StellarTips:mainfrom
Degentle12:fix/issue-87-fee-recipient-compromise-test

Conversation

@Degentle12

Copy link
Copy Markdown
Contributor

Summary

Resolves #87 — Fee-recipient compromise adversarial test scenario.

Changes

  • Adds test_fee_recipient_compromise_response_runbook to src/test.rs
  • Validates the full admin-key-compromise recovery sequence:
    1. Setup with active tips and fee routing
    2. Unauthorized set_fee_recipient panics with #11 (NotAuthorized)
    3. Recovery: pause → rotate admin → restore fee recipient → unpause
    4. Verify next tip routes fee to the safe address
  • Cross-references docs/ADMIN_RUNBOOK.md in the fire-drill section

Files Changed

  • src/test.rs — +82 lines (new test)
  • docs/ADMIN_RUNBOOK.md — +1 line (test reference)
  • CHANGELOG.md — +2 lines (entry)

…ps#87)

Adds `test_fee_recipient_compromise_response_runbook` which validates
 the full admin-key-compromise recovery sequence:
  1. Assert unauthorized set_fee_recipient panics (StellarTips#11)
  2. Pause → rotate admin → restore fee recipient → unpause
  3. Verify next tip routes fee to the safe address

Cross-referenced from docs/ADMIN_RUNBOOK.md fire-drill section.
…and remove misleading comment in test

CHANGELOG.md: Move test_fee_recipient_compromise_response_runbook entry
from ### Added to ### Fixed to match the convention used by all other
issue-related entries (Issue StellarTips#38, StellarTips#19, StellarTips#18, StellarTips#17, StellarTips#20).

src/test.rs: Remove misleading comment claiming 'The old admin can no
longer authorize admin calls' when the code actually tested the new
admin's capabilities. Also remove the redundant intermediate rando
fee-recipient assignment since Step 4 immediately restores the correct
recipient anyway.
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.

Fee-recipient compromise adversarial test scenario

1 participant