-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update capabilites in line with Ucan 0.9.0/0.10.0 #105
Conversation
Codecov Report
❗ Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more. Additional details and impacted files@@ Coverage Diff @@
## main #105 +/- ##
==========================================
+ Coverage 57.10% 58.42% +1.31%
==========================================
Files 24 23 -1
Lines 802 849 +47
Branches 196 207 +11
==========================================
+ Hits 458 496 +38
+ Misses 206 204 -2
- Partials 138 149 +11
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks like a promising first pass. Here is my high-level feedback:
- We need to consider the updates to resources in UCAN that have accumulated as of v0.10.0
- It would be nice to see some additional test coverage to ensure that caveats work as intended
- It may not be feasible, but it would be nice to try to winnow down the number of representations of a capability as much as possible (with just one representation being the North Star)
Oh, should also call out that as of this change we will likely be removing support for UCAN IPLD (to be re-introduced at some future date as the spec is updated to be coherent with v0.10.0+). |
6fb3927
to
f214fbf
Compare
Now with working caveats, testing the cases in the spec.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is awesome. Only one meaningful change suggested.
…wg#22. * Represents capabilities as map-of-maps rather than array of tuples. * Validates caveats in proof chain * Renames 'att' to 'cap' (Ucan spec 0.10.0). * Renames various capability semantics structs with spec names (With=>Resource, Can/Action=>Ability, Resource=>ResourceURI) * Renames 'Capability' to 'CapabilityView'.
Updated:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work on this!
Initial work on updating to support latest capabilities in Ucan spec 0.9.0/0.10.0, with a goal of moving closer to the final serializable shape.
nb
field for capabilities #22 (or what it turned into in 0.10.0)Looking for feedback on:
[]
) inreduce_capabilities()
, or we can introduce a semantical layer (as part ofCapabilitySemantics<S, A, C>
), but unclear what that looks like and how it would work.semantics
that could use some improvements