You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Build a middleware layer that validates co-creator permissions before proxying creator-only API requests, checking the on-chain co-creator registry to enforce role-based access for ADMIN, CONTENT, and REVENUE roles.
Scope
Middleware intercepts creator-action endpoints and checks co-creator role
Role-to-endpoint mapping: ADMIN all, CONTENT announcements only, REVENUE royalties/revenue only
Co-creator role fetched from GET /keys/:key_id/co-creators/:wallet with 60s cache
Returns 403 with role_required and current_role when access denied
Primary creator bypasses co-creator check
Acceptance Criteria
ADMIN role passes all creator-action endpoints correctly
CONTENT role blocked correctly on non-announcement endpoints
REVENUE role blocked correctly on non-revenue endpoints
403 returned with correct role_required and current_role
@AllysiadevOps has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
Hi! I've looked at the issue details and I love this kind of task. I'm confident I can handle it and deliver a well-tested PR on time. I'd be happy if you assign it to me!
@ifnanabdulkhadir-hub has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
Hi! I'd like to work on this. I'm a full-stack developer with backend experience in Node/TypeScript APIs, including auth and role-based access middleware.
My plan:
Add a co-creator permission middleware that runs before creator-action routes, following the server's existing middleware pattern
Resolve the caller's wallet; if it's the primary creator for the key, skip the co-creator check
Otherwise fetch the role from GET /keys/:key_id/co-creators/:wallet, cached for 60s per (key_id, wallet)
Central role-to-endpoint map: ADMIN → all creator actions, CONTENT → announcements only, REVENUE → royalties/revenue only
On denial, return 403 with { role_required, current_role }; a wallet with no co-creator role gets current_role: null
If the registry lookup fails, deny by default rather than letting the request through
Testing:
Unit/integration tests for each acceptance criterion: ADMIN passes all, CONTENT and REVENUE blocked outside their endpoints, correct 403 body, primary creator bypass
Test the cache (second request within 60s doesn't re-fetch)
I'll link the PR with Closes #1156. Before starting I'll confirm how the primary creator is identified and the exact list of creator-action routes, so the mapping matches the code.
@moon-code12 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
Hello Maintainers, I would like to express my interest in working on this issue. I have reviewed the issue description and understand the problem that needs to be addressed. My approach will be to investigate the existing codebase, identify the root cause, and implement a solution that follows the project's existing architecture and coding standards.
Congratulations, @Samuel-21-eng! 🎉 Your application was accepted by the repo's maintainers, and the issue is due on October 22, 2026.
🧑💻 @Samuel-21-eng: 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.
😎 @Samuel-21-eng: 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.
Activity
AllysiadevOps commentedon Oct 20, 2026
@AllysiadevOps has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @AllysiadevOps to this issue.
chukwujoshua242-prog commentedon Oct 20, 2026
@chukwujoshua242-prog has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @chukwujoshua242-prog to this issue.
Alhajichild commentedon Oct 20, 2026
@Alhajichild has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @Alhajichild to this issue.
ifnanabdulkhadir-hub commentedon Oct 20, 2026
@ifnanabdulkhadir-hub has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @ifnanabdulkhadir-hub to this issue.
Moradeke242 commentedon Oct 20, 2026
@Moradeke242 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @Moradeke242 to this issue.
VeronicDev commentedon Oct 20, 2026
@VeronicDev has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @VeronicDev to this issue.
tijanib141 commentedon Oct 20, 2026
@tijanib141 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @tijanib141 to this issue.
Wittig18 commentedon Oct 20, 2026
@Wittig18 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @Wittig18 to this issue.
moon-code12 commentedon Oct 20, 2026
@moon-code12 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @moon-code12 to this issue.
Amksongs commentedon Oct 20, 2026
@Amksongs has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @Amksongs to this issue.
laykanolah commentedon Oct 20, 2026
@laykanolah has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @laykanolah to this issue.
Fabulouz34 commentedon Oct 20, 2026
@Fabulouz34 has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @Fabulouz34 to this issue.
CollinsKRO commentedon Oct 20, 2026
@CollinsKRO has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @CollinsKRO to this issue.
Samuel-21-eng commentedon Oct 20, 2026
@Samuel-21-eng has applied to work on this issue as part of the Stellar Wave Program's 10th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @Samuel-21-eng to this issue.
drips-wave commentedon Oct 20, 2026
Congratulations, @Samuel-21-eng! 🎉 Your application was accepted by the repo's maintainers, and the issue is due on October 22, 2026.
🧑💻 @Samuel-21-eng: 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 🌊
feat(middleware): add key co-creator permission validation middleware (…
Merge pull request #1206 from Samuel-21-eng/main
grantfox-oss commentedon Oct 23, 2026
🎉 This issue has been marked as completed on GrantFox!
@Samuel-21-eng's PR #1206 was approved and merged by @Chucks1093.
🏆 @Samuel-21-eng: You earned 35 FoxPoints for this contribution! Your current tier: Explorer (446 total points). Track your full progress on GrantFox.
👏 Great work, @Samuel-21-eng! Keep contributing to accesslayerorg.
drips-wave commentedon Oct 23, 2026
This issue has been completed by @Samuel-21-eng as part of the Stellar Wave Program's 10th Wave 🥳
😎 @Samuel-21-eng: 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.