Predictify-org / Predictify-org/predictify-frontend
[GrantFox][High] Implement a complete wallet transaction state machine
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 4
- Forks
- 194
- Avg merge
- 15h 38m
- Merged PRs (30d)
- 23
Description
Summary
Implement a complete wallet transaction state machine
Why this matters
Prediction actions need explicit signing, submission, confirmation, rejection, timeout, and retry states.
Scope
Create a reusable lifecycle model and prevent duplicate market mutations.
Acceptance criteria
- Every action exposes deterministic lifecycle states.
- Confirmed actions cannot be submitted twice.
- Rejection differs from network failure.
- Tests cover refresh, disconnect, retry, and duplicate clicks.
Validation
Add regression coverage for existing behavior, failure modes, authorization boundaries, and compatibility. The implementation must pass the repository CI checks.
Non-goals
- Typo-only, formatting-only, or documentation-only changes.
- Unrelated refactors or dependency upgrades.
- Weakening existing security, authorization, CI, or production safeguards.
Contributor application
Before implementation, comment with relevant experience, a 1–4 bullet approach, and an estimate for opening the first draft PR. Wait for maintainer assignment before coding.
PR requirements
Use a feature branch, include Closes #<issue-number>, check every acceptance criterion, link criteria to code/tests, explain security and failure-mode considerations, and pass CI.
Reward-readiness
This is a substantive GrantFox campaign issue. Merge and CI success do not by themselves guarantee reward eligibility; final reward-readiness is determined by campaign review.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are named. Start by locating the wallet transaction handling, market mutation logic, and existing regression tests, then map the lifecycle states and failure modes to the acceptance criteria. Done means deterministic action states, duplicate-submission prevention, distinct rejection and network-failure handling, and coverage for refresh, disconnect, retry, and duplicate clicks.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- blockchain, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100