Description
The contract has accumulated multiple legacy entrypoints (e.g. early dispute filing variants) that should be phased out. Introduce a #[deprecated] annotation pattern plus a DeprecatedCall(entrypoint: Symbol) event so callers are signalled at runtime and indexers can chart usage decay.
Requirements and Context
- Helper
emit_deprecated(env, entrypoint) in events.rs
- Apply to at least two known legacy entrypoints
- Document deprecation policy in
docs/
- Must be secure, tested, and documented
- Should be efficient and easy to review
Suggested Execution
- Fork the repo and create a branch
git checkout -b feature/deprecated-entrypoint-events
- Implement changes
contracts/predictify-hybrid/src/lib.rs
contracts/predictify-hybrid/src/events.rs
- Test and commit
cargo test -p predictify-hybrid deprecated_call
- Cover edge cases
- Include test output and notes in the PR
Example commit message
feat: mark legacy entrypoints with deprecation event
Acceptance Criteria
Guidelines
- Clear documentation and inline comments
- Real Soroban SDK idioms in any new helper code
- Timeframe: 96 hours
Description
The contract has accumulated multiple legacy entrypoints (e.g. early dispute filing variants) that should be phased out. Introduce a
#[deprecated]annotation pattern plus aDeprecatedCall(entrypoint: Symbol)event so callers are signalled at runtime and indexers can chart usage decay.Requirements and Context
emit_deprecated(env, entrypoint)inevents.rsdocs/Suggested Execution
contracts/predictify-hybrid/src/lib.rscontracts/predictify-hybrid/src/events.rscargo test -p predictify-hybrid deprecated_callExample commit message
Acceptance Criteria
Guidelines