proposal: reputation-gated authority — compose trust scoring with delegation chains#274
proposal: reputation-gated authority — compose trust scoring with delegation chains#274imran-siddique merged 2 commits intomicrosoft:mainfrom
Conversation
…t-driven cache, feedback isolation
|
@microsoft-github-policy-service agree |
imran-siddique
left a comment
There was a problem hiding this comment.
Thanks for this @aeoess — really strong proposal. The 6 invariants are well-formulated, the component-wise narrowing model is the right abstraction, and the trust feedback isolation rule (denials don't spiral scores) is exactly the kind of edge case that matters in production. This is clearly informed by real implementation experience.
We'd like to merge the proposal as-is into docs/proposals/ — it's a valuable design document for the community.
On the implementation path
Looking at the integration table at the bottom of the proposal, most of the changes touch core AgentMesh internals (identity/delegation.py, trust/scoring.py, TrustManager, PolicyEngine). We want to be careful about the architecture here.
Our preferred direction: integration interfaces, not core modifications.
Rather than embedding resolve_effective_authority() directly into the PolicyEngine pipeline, we'd like to:
-
Define an
AuthorityResolverprotocol/interface in AgentMesh that the PolicyEngine calls at the right point in the evaluation pipeline. This is the hook your proposal needs. -
You own the implementation — publish it as a package (e.g.,
agentmesh-reputation-gateor as part of Agent Passport System) that implements theAuthorityResolverprotocol. This means:- You control the release cadence
- Your 534-test suite covers your code
- Users
pip installyour package and register it with the toolkit
-
We expose the minimal interface changes in AgentMesh core:
AuthorityResolverprotocol withresolve(identity, delegation, action) -> AuthorityDecisionTrustScoreChangedevent emission fromTrustManager(for your cache invalidation)CapabilityModel.check()accepting aneffective_scopeoverride- Lineage-bound initial trust in
identity.delegate()(Invariant 6 — this one likely belongs in core)
This way, the core toolkit stays focused on the enforcement boundary and trust primitives, and the reputation-gated authority composition logic lives in your package where you can iterate on it independently.
Concretely, next steps we'd suggest:
- We merge this proposal now ✅
- We open an issue for the
AuthorityResolverprotocol interface design (we'll draft the interface based on your proposal's data model) - You implement against that interface in Agent Passport System
- We add an integration example in
docs/proposals/orexamples/showing how to wire it up
Does this direction work for you? The goal is to get the right extension points into AgentMesh so you (and others) can build authority composition models without forking core.
|
@imran-siddique Makes sense. Integration interfaces over core modifications keeps both projects independently releasable, which is what we'd want anyway. The AuthorityResolver protocol in #275 is the right hook. I'll implement it as part of the Agent Passport System SDK - On the four steps:
The trust feedback isolation rule came from a real production bug where a new agent got stuck in a death spiral — blocked by low trust, penalized for being blocked, repeat. Glad that resonated. Will start tracking #275 for the interface spec. |
Adds a design proposal for composing AgentMesh's TrustManager trust scoring with its delegation system, so that effective authority is resolved component-wise at execution time. Covers:
admin:observabilityvsadmin:policyvsadmin:identity)allow,allow_narrowed,deny,auditReferences #140.
Based on the working implementation in Agent Passport System (Apache 2.0, 534 tests).