Skip to content

Build atomic bundle purchase contract for multiple creator keys in one transaction #1057

Closed

Description

@Chucks1093

Summary

Implement a bundle contract that executes purchases of multiple creator keys atomically, succeeding or reverting as a unit, with a shared slippage guard across the full bundle.

Scope

  • bundle_buy(items: [{key_id, amount, max_price}]) — atomically executes all items
  • Bundle reverts entirely if any single item fails or exceeds max_price
  • Total cost returned in BundleExecuted event with per-item breakdown
  • get_bundle_quote(items) — returns estimated cost and price impact per item
  • Max 10 items per bundle

Acceptance Criteria

  • Full bundle reverts when any single item fails
  • All items execute successfully when all within max_price
  • BundleExecuted emitted with correct per-item breakdown
  • get_bundle_quote returns accurate estimates for all items
  • Bundle rejected when item count exceeds 10

ETA

24 hours

Activity

  1. 3nity610 commented on Oct 17, 2026

    @3nity610

    @3nity610 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hey, I’ve read through the issue and I’d love to give this one a try. Kindly assign it to me.

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @3nity610 to this issue.

  2. Chinko21 commented on Oct 17, 2026

    @Chinko21
    Contributor

    @Chinko21 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Please, assign this issue to me

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @Chinko21 to this issue.

  3. KingDavid9999 commented on Oct 17, 2026

    @KingDavid9999
    Contributor

    @KingDavid9999 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hi maintainer, I'd very much appreciate the opportunity to work on this issue.
    Having reviewed the acceptance criteria, I'm confident that I'd be able to have a PR up shortly after being assigned.
    Kindly assign this issue to me.
    Thank you!

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @KingDavid9999 to this issue.

  4. kingmj26 commented on Oct 17, 2026

    @kingmj26

    @kingmj26 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Kindly assign

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @kingmj26 to this issue.

  5. AgentX010 commented on Oct 17, 2026

    @AgentX010

    @AgentX010 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    Hello Maintainer, I’d love to take ownership of this issue and submit a high-quality pull request once completed.

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @AgentX010 to this issue.

  6. Peolite001 commented on Oct 17, 2026

    @Peolite001
    Contributor

    @Peolite001 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    I have gone through the code base and I can solve this issue without resulting any errors. Kindly assign me

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @Peolite001 to this issue.

  7. oyeyinka1 commented on Oct 17, 2026

    @oyeyinka1

    @oyeyinka1 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    I’m interested in implementing the atomic bundle purchase contract for multiple creator keys. I’ll build "bundle_buy" with a shared slippage guard, ensuring the entire transaction reverts if any item fails or exceeds its "max_price". I’ll also implement "get_bundle_quote" to estimate total cost and per-item price impact, emit a "BundleExecuted" event with accurate per-item details, and enforce the 10-item limit. I’ll add tests covering successful purchases, individual item failures, slippage violations, quote accuracy, and oversized bundles.

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @oyeyinka1 to this issue.

  8. Ottones commented on Oct 17, 2026

    @Ottones

    @Ottones has applied to work on this issue as part of the Stellar Wave Program's 10th wave.

    I’ve looked over the issue and know how to handle the fix. I have successfully handled similar tasks in the previous Wave and I am available to start working on it right away.

    ℹ️ Repo Maintainers: To accept this application, review their application or assign @Ottones to this issue.

  9. drips-wave commented on Oct 17, 2026

    @drips-wave

    Congratulations, @KingDavid9999! 🎉 Your application was accepted by the repo's maintainers, and the issue is due on October 22, 2026.

    🧑‍💻 @KingDavid9999: Please resolve the issue such that the repo's maintainers have enough time to review your contribution before the due date. You'll earn Points for completing the issue on-time, which will make you eligible for a share of the Stellar Wave Program's reward pool.

    Warning

    When opening a PR, please link it to this issue to ensure it gets tracked accurately. Points are awarded when this issue is marked as completed by the maintainer.

    🤠 Repo maintainers: Please keep an eye on the contributor's progress and review their work before the due date. You can manage this issue, including adjusting its complexity and points, here.

    🌊 Happy Wave 🌊

  10. grantfox-oss commented on Oct 18, 2026

    @grantfox-oss

    🎉 This issue has been marked as completed on GrantFox!

    @KingDavid9999's PR #1083 was approved and merged by @Chucks1093.

    🏆 @KingDavid9999: You earned 35 FoxPoints for this contribution! Your current tier: Builder (1,019 total points). Track your full progress on GrantFox.

    👏 Great work, @KingDavid9999! Keep contributing to accesslayerorg.

  11. added a commit that references this issue on Oct 18, 2026
  12. drips-wave commented on Oct 18, 2026

    @drips-wave

    This issue has been completed by @KingDavid9999 as part of the Stellar Wave Program's 10th Wave 🥳

    😎 @KingDavid9999: You earned 150 Points for completing this issue! Once the Wave's rewards are finalized, you'll be eligible for a percentage of the Wave's reward pool based on the percentage of total points you've earned. Learn more here. You can also Leave a review to share your experience working on this issue.

    🧑‍💻 Repo maintainers: How'd the contributor do? Leave a review to share your experience working with them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Stellar WaveIssues in the Stellar wave program

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions