Skip to content

feat: support expiring role assignments - #313

Open
Tsammie wants to merge 1 commit into
Adamantine-guild:mainfrom
Tsammie:feat/role-assignment-expires-at
Open

feat: support expiring role assignments#313
Tsammie wants to merge 1 commit into
Adamantine-guild:mainfrom
Tsammie:feat/role-assignment-expires-at

Conversation

@Tsammie

@Tsammie Tsammie commented Jul 28, 2026

Copy link
Copy Markdown

Summary

  • Added optional expiresAt support to role assignment input.
  • Threaded expiresAt through role assignment creation so time-limited roles can be persisted.
  • Added validation for invalid expiresAt values using the existing API validation style.
  • Added tests covering permanent, active time-limited, expired, and invalid expiry scenarios.

Notes

This PR keeps the change focused on role assignment expiry support. It does not refactor the policy engine or address the existing duplicate role-resolution logic separately.

Checks

  • Permanent role assignments remain unaffected
  • Future expiresAt assignments can grant access
  • Expired role assignments stop granting access
  • Invalid expiresAt input is rejected
  • git diff --check

Closes #138

@Lakes41

Lakes41 commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

This PR cannot be merged automatically because one or more workflow checks failed.

Please review the failed checks, push a fix, and wait for the workflows to pass.

After the checks pass and there are no merge conflicts, the automation can review it again.

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.

Add explicit validation and tests for expiresAt handling in MembershipService/policy RoleContext.assignments

2 participants