Skip to content

ca6dd926-fd39-405d-b710-af4fe8744727 5af46c5f-dbd8-46e6-93fb-0e21dd4aaf69 12319f5b-fa52-46b1-8b49-d91fbceeca7d harden share-token observability#443

Closed
carrion256 wants to merge 1 commit into
audit/share-token-metadata-a050from
audit/share-token-burn-from-event-a094
Closed

ca6dd926-fd39-405d-b710-af4fe8744727 5af46c5f-dbd8-46e6-93fb-0e21dd4aaf69 12319f5b-fa52-46b1-8b49-d91fbceeca7d harden share-token observability#443
carrion256 wants to merge 1 commit into
audit/share-token-metadata-a050from
audit/share-token-burn-from-event-a094

Conversation

@carrion256

@carrion256 carrion256 commented May 18, 2026

Copy link
Copy Markdown
Collaborator

Fixed Findings

  • A-093 / Nexus ca6dd926-fd39-405d-b710-af4fe8744727
    • Replaces StrKey text-prefix contract-address validation with soroban_sdk::address_payload::AddressPayload discrimination.
    • Adds account-address rejection coverage for constructor vault binding and set_vault.
  • A-094 / Nexus 5af46c5f-dbd8-46e6-93fb-0e21dd4aaf69
    • Keeps the standard burn event and emits a supplemental burn_from event keyed by spender and owner, so delegated burns are distinguishable from direct burns.
  • A-097 / Nexus 12319f5b-fa52-46b1-8b49-d91fbceeca7d
    • Adds share-token admin rotation, old-admin revocation, allowance, allowance expiry, and vault-invoker security coverage.

Stack

Verification

  • RUSTUP_TOOLCHAIN=1.89.0 cargo fmt --all --check
  • git diff --check
  • RUSTUP_TOOLCHAIN=1.89.0 cargo test -p templar-soroban-share-token -- --nocapture — 17 passed
  • Focused tests:
    • burn_from_emits_supplemental_spender_event
    • constructor_rejects_account_vault_address
    • set_vault_rejects_account_address
    • set_admin_rotates_admin
    • direct_caller_cannot_burn_from_even_with_allowance
  • just -f contract/vault/soroban/justfile build
  • just -f contract/vault/soroban/justfile size-budget-check — 93,961 bytes <= 131,072 bytes
  • Post-commit hook reran Soroban size-budget-check and passed at 93,961 bytes.

This change is Reviewable

Superseded

This A-093/A-094/A-097 follow-up PR has been folded into the consolidated share-token cluster PR #429.

Closing to keep share-token remediation in PR #429.

…af69 12319f5b-fa52-46b1-8b49-d91fbceeca7d harden share-token observability

A-093: replace StrKey text-prefix contract-address validation with the Soroban SDK address payload discriminator and add account-address rejection coverage.\n\nA-094: emit a supplemental burn_from event keyed by spender and owner so delegated burns are distinguishable from direct burns.\n\nA-097: add share-token admin rotation, allowance, expiry, and vault-invoker security coverage.\n\nVerification:\n- RUSTUP_TOOLCHAIN=1.89.0 cargo fmt --all --check\n- git diff --check\n- RUSTUP_TOOLCHAIN=1.89.0 cargo test -p templar-soroban-share-token -- --nocapture (17 passed)\n- focused share-token tests: burn_from_emits_supplemental_spender_event, constructor_rejects_account_vault_address, set_vault_rejects_account_address, set_admin_rotates_admin, direct_caller_cannot_burn_from_even_with_allowance\n- just -f contract/vault/soroban/justfile build\n- just -f contract/vault/soroban/justfile size-budget-check (93961 bytes <= 131072 bytes)
@coderabbitai

coderabbitai Bot commented May 18, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: efdbc199-e2f7-43b4-a62b-c2d4521d141c

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch audit/share-token-burn-from-event-a094

Comment @coderabbitai help to get the list of available commands and usage tips.

@carrion256

Copy link
Copy Markdown
Collaborator Author

Superseded by consolidated share-token cluster PR #429.

@carrion256 carrion256 closed this May 18, 2026
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