BCR-2026-006: Principal Authority Predicates#152
BCR-2026-006: Principal Authority Predicates#152ChristopherA wants to merge 8 commits intomasterfrom
Conversation
Proposes Known Values for principal-agent authority relationships: principalAuthority, assertsDelegationFrom, delegationScope, constraints. Community range 1040-1043. Seeking rough consensus; willing to use 100000+ if community prefers. Signed-off-by: Christopher Allen <ChristopherA@LifeWithAlacrity.com>
shannona
left a comment
There was a problem hiding this comment.
I find this one confusing and it's all about "assertsDelegationFrom". It feels disconnected from the "principalAuthority" and in fact I don't understand why the principalAuthority isn't declaring (and signing!) delegation TO someone. That seems the direction the digital authorization should be, and it links all this together in a way that it feels like it isn't right now. (And if that doesn't exist, then it needs to be clearer in this document how to look up that delegation [e.g., go to their XID and look for a 'delegatedTo' Known Value or something]
You also already have 'delegatedBy' and 'delegateChain' in BCR-2026-006, which feels redundant.
|
This points to a real tension in the design. The reasoning behind On the redundancy with BCR-006: that BCR emerged from working through the XID-Quickstart binding agreements tutorial. When drafting tutorial 09 on CLA signing, it became clear that someone might sign a CLA on behalf of their employer rather than personally — and that the signature context (in what capacity? representing whom?) was distinct from the authority relationship itself. That's where There's also a trust model question here. XID edge assertions (BCR-2026-003) assume a peer-to-peer model where edges from source→target aren't really valid unless accepted by the target. But these predicates might also be used in issuer→subject scenarios like Verifiable Credentials, where there's no acceptance step — the issuer just makes a claim. I'd like these schemas to be usable in both contexts (and available as JSON-LD at assertions.info for people doing VC-style work). That may affect which direction the delegation should flow. Some directions this could go:
The consolidation option might be cleanest — it puts all delegation predicates in one BCR and makes this one minimal. What's your read? |
|
Consolidation and the creation of both "delegatedTo" and "assertsDelegatedFrom" (name change purposeful) would be my suggestion. |
- assertsDelegationFrom → assertsConferralFrom - delegationScope → conferralScope - delegationConstraints → conferralConstraints - Updated terminology section with conferral definition - Updated all examples and usage patterns - Moved Open Question Q3 to Design Note (terminology resolved) - Changed "key-level" to "cryptographic signing privileges" Rationale: "Conferral" avoids collision with cryptographic delegation (XID delegate predicate), OAuth grants, and access control terminology. Signed-off-by: Christopher Allen <ChristopherA@LifeWithAlacrity.com>
Terminology Update: "Conferral" replaces "Delegation"Based on feedback about terminology collision, I've renamed the delegation predicates to use "conferral" instead. Why the change"Delegation" collides with multiple technical domains:
"Conferral" is the formal legal term for granting authority ("confer authority upon") and has minimal collision with existing technical vocabulary. Changes in this PR
Also updated terminology sections, examples, added a Design Note explaining the choice, and changed "key-level privileges" to "cryptographic signing privileges". BCR-2026-006 uses matching |
Consolidating all authority conferral predicates in one place: - Added conferredBy (1044) for single-hop authority - Added conferralChain (1045) for multi-hop authority chains - BCR-007 now has full conferral vocabulary (1040-1045) - Updated solution section and related BCRs references This avoids having conferral terminology split across two BCRs. BCR-2026-006 now focuses solely on signing context (signingAs, onBehalfOf). Signed-off-by: Christopher Allen <ChristopherA@LifeWithAlacrity.com>
Predicate Consolidation: conferral predicates added from BCR-2026-006To avoid splitting authority conferral terminology across two BCRs, I've moved BCR-2026-007 now defines all conferral predicates (1040-1045):
BCR-2026-006 now defines only:
This keeps the authority relationship vocabulary in one place while BCR-006 focuses purely on signing context. |
Per Shannon's feedback, added bidirectional conferral: - confersTo (1046): Principal declares conferral TO agent (signed by principal) - assertsConferralFrom (1041): Agent claims conferral FROM principal Together they provide complete verification: - Agent can claim authority - Principal can confirm by signing a confersTo declaration Signed-off-by: Christopher Allen <ChristopherA@LifeWithAlacrity.com>
Added:
|
|
Per Wolf's feedback: removed |
File renamed: bcr-2026-007-principal-authority.md → bcr-2026-006-principal-authority.md Also fixes signature examples to use proper double-signing pattern per BCR-2026-004: - conferredBy/conferralChain examples simplified to unsigned assertions - confersTo example uses double-signing pattern with signer predicate Signed-off-by: Christopher Allen <ChristopherA@LifeWithAlacrity.com>
Renumbered: BCR-2026-007 → BCR-2026-006File renamed: Also includes signature example fixes for consistency with BCR-2026-004:
Cross-references updated. Branch name preserved for PR history. |
Signed-off-by: Christopher Allen <ChristopherA@LifeWithAlacrity.com>
Signature Pattern UpdateUpdated Before (double-wrap): After (signature-with-assertions): This aligns with the validated pattern in BCR-2026-004 where assertions are placed ON the Signature object, wrapped, and signed. |
Proposes Known Values for expressing principal-agent authority relationships in Gordian Envelopes.
Predicates defined:
principalAuthority— The entity with authority over the workassertsDelegationFrom— Agent's claim of delegation from a principaldelegationScope— Boundaries of delegated authoritydelegationConstraints— Specific limitations on the delegationCodepoints: Community range 1040-1043
Enables clear attribution when authorship and responsibility are distinct, such as ghostwritten works or delegated creative authority.
Seeking rough consensus; willing to use 100000+ range if community prefers.