{"_id":"@agenticprimitives/registry-resolution","_rev":"5-04f185bd20e702c5d8490b32bf6018c1","name":"@agenticprimitives/registry-resolution","dist-tags":{"latest":"1.0.0-alpha.26"},"versions":{"1.0.0-alpha.22":{"name":"@agenticprimitives/registry-resolution","version":"1.0.0-alpha.22","keywords":["agent","naming","registry","resolution","smart-agent","agentic"],"license":"MIT","_id":"@agenticprimitives/registry-resolution@1.0.0-alpha.22","maintainers":[{"name":"richcanvas","email":"richardpedersen3@gmail.com"}],"homepage":"https://github.com/agentictrustlabs/agenticprimitives/tree/master/packages/registry-resolution","bugs":{"url":"https://github.com/agentictrustlabs/agenticprimitives/issues"},"dist":{"shasum":"751ef74665f426831ac0982d123ab74769b15c92","tarball":"https://registry.npmjs.org/@agenticprimitives/registry-resolution/-/registry-resolution-1.0.0-alpha.22.tgz","fileCount":38,"integrity":"sha512-NNY5EDYuvvbBMhsIT8BVN2IfSyTVTKhj029KbMkBg3tcWy+2aKdm05wlQ+3p0QBXb7X7O5q9g1aIU5CY9C6ftg==","signatures":[{"sig":"MEUCIQCLnJxhyi0NtLUXRrJ1fC94UbyzjLATFGms1HImwxUc1wIgMHgnJcpk9dujQjyxy1pTc0WmwA3ykIP929sHbyOdG3E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74015},"main":"./dist/index.js","type":"module","_from":"file:agenticprimitives-registry-resolution-1.0.0-alpha.22.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","test:unit":"vitest run test/unit --passWithNoTests","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"richcanvas","email":"richardpedersen3@gmail.com"},"_resolved":"/tmp/9f5ab958973db8dd6a8de50342f19291/agenticprimitives-registry-resolution-1.0.0-alpha.22.tgz","_integrity":"sha512-NNY5EDYuvvbBMhsIT8BVN2IfSyTVTKhj029KbMkBg3tcWy+2aKdm05wlQ+3p0QBXb7X7O5q9g1aIU5CY9C6ftg==","repository":{"url":"git+https://github.com/agentictrustlabs/agenticprimitives.git","type":"git","directory":"packages/registry-resolution"},"_npmVersion":"11.16.0","description":"The composed typed resolver (spec 346 §6.3/§8/§9): typed name → subject → derived type → (context → relationship) → permitted publication → bindings, returned as SEPARATE signals (subject / context / relationship / bindings / authority / evidence — never ","directories":{},"_nodeVersion":"24.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.8","@agenticprimitives/types":"1.0.0-alpha.22","@agenticprimitives/situations":"0.0.0-alpha.6","@agenticprimitives/agent-naming":"1.0.0-alpha.22","@agenticprimitives/organization":"0.0.0-alpha.6","@agenticprimitives/registry-kit":"0.0.0-alpha.10","@agenticprimitives/agent-resolution":"0.0.0-alpha.3"},"peerDependencies":{"@agenticprimitives/types":"1.0.0-alpha.22","@agenticprimitives/situations":"0.0.0-alpha.6","@agenticprimitives/agent-naming":"1.0.0-alpha.22","@agenticprimitives/organization":"0.0.0-alpha.6","@agenticprimitives/registry-kit":"0.0.0-alpha.10","@agenticprimitives/agent-resolution":"0.0.0-alpha.3"},"_npmOperationalInternal":{"tmp":"tmp/registry-resolution_1.0.0-alpha.22_1789160291427_0.28083722378806497","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-alpha.23":{"name":"@agenticprimitives/registry-resolution","version":"1.0.0-alpha.23","keywords":["agent","naming","registry","resolution","smart-agent","agentic"],"license":"MIT","_id":"@agenticprimitives/registry-resolution@1.0.0-alpha.23","maintainers":[{"name":"richcanvas","email":"richardpedersen3@gmail.com"}],"homepage":"https://github.com/agentictrustlabs/agenticprimitives/tree/master/packages/registry-resolution","bugs":{"url":"https://github.com/agentictrustlabs/agenticprimitives/issues"},"dist":{"shasum":"fb3e5a8d7ef8c2ca50f69127f49ef0117289f25a","tarball":"https://registry.npmjs.org/@agenticprimitives/registry-resolution/-/registry-resolution-1.0.0-alpha.23.tgz","fileCount":38,"integrity":"sha512-/ke+dVQ3Raf91u9X7xt+IENLaQdaDXpNUA9UjU+PYhEgVCPR1hiLrZlUBhzbD45V3ZCVpFhwzUH6DjvpsuCN7A==","signatures":[{"sig":"MEQCIGZaeeR06B8r6ws+6gnpHdyUfXpasCwpugP62zjPwwcRAiA5auE+dPAhj4wo1EMAfibhHnZuWtF4JcKz/O/ife/uEQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74015},"main":"./dist/index.js","type":"module","_from":"file:agenticprimitives-registry-resolution-1.0.0-alpha.23.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","test:unit":"vitest run test/unit --passWithNoTests","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:30e9377b-bb3d-4fd9-b16c-7faddd801bbe"}},"_resolved":"/tmp/23d36cefc40fd07f02fe87d1c1d80862/agenticprimitives-registry-resolution-1.0.0-alpha.23.tgz","_integrity":"sha512-/ke+dVQ3Raf91u9X7xt+IENLaQdaDXpNUA9UjU+PYhEgVCPR1hiLrZlUBhzbD45V3ZCVpFhwzUH6DjvpsuCN7A==","repository":{"url":"git+https://github.com/agentictrustlabs/agenticprimitives.git","type":"git","directory":"packages/registry-resolution"},"_npmVersion":"11.19.0","description":"The composed typed resolver (spec 346 §6.3/§8/§9): typed name → subject → derived type → (context → relationship) → permitted publication → bindings, returned as SEPARATE signals (subject / context / relationship / bindings / authority / evidence — never ","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.8","@agenticprimitives/types":"1.0.0-alpha.23","@agenticprimitives/situations":"0.0.0-alpha.7","@agenticprimitives/agent-naming":"1.0.0-alpha.23","@agenticprimitives/organization":"0.0.0-alpha.7","@agenticprimitives/registry-kit":"0.0.0-alpha.11","@agenticprimitives/agent-resolution":"0.0.0-alpha.4"},"peerDependencies":{"@agenticprimitives/types":"1.0.0-alpha.23","@agenticprimitives/situations":"0.0.0-alpha.7","@agenticprimitives/agent-naming":"1.0.0-alpha.23","@agenticprimitives/organization":"0.0.0-alpha.7","@agenticprimitives/registry-kit":"0.0.0-alpha.11","@agenticprimitives/agent-resolution":"0.0.0-alpha.4"},"_npmOperationalInternal":{"tmp":"tmp/registry-resolution_1.0.0-alpha.23_1789164146054_0.7432864706376756","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-alpha.24":{"name":"@agenticprimitives/registry-resolution","version":"1.0.0-alpha.24","keywords":["agent","naming","registry","resolution","smart-agent","agentic"],"license":"MIT","_id":"@agenticprimitives/registry-resolution@1.0.0-alpha.24","maintainers":[{"name":"richcanvas","email":"richardpedersen3@gmail.com"}],"homepage":"https://github.com/agentictrustlabs/agenticprimitives/tree/master/packages/registry-resolution","bugs":{"url":"https://github.com/agentictrustlabs/agenticprimitives/issues"},"dist":{"shasum":"5b372361fddc68c16fd6bf997328f6540482830d","tarball":"https://registry.npmjs.org/@agenticprimitives/registry-resolution/-/registry-resolution-1.0.0-alpha.24.tgz","fileCount":38,"integrity":"sha512-XSNqfqgG7Y43XvbAaiVpttLkCt7cEinKtKqsmO9eq5lfAUMZno1tdHT4+LvjFsvc7oGuviT/p3nFOrIwY653ig==","signatures":[{"sig":"MEQCIBhJV+dKoaDs9iKi9Sr/AjhOi9ZXQDjK5jPlHMVzJqXCAiAUZprIcMq/qfsQJ7S4fzom4oEex8w/fBKPwA/QOjX0DQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74015},"main":"./dist/index.js","type":"module","_from":"file:agenticprimitives-registry-resolution-1.0.0-alpha.24.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","test:unit":"vitest run test/unit --passWithNoTests","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:30e9377b-bb3d-4fd9-b16c-7faddd801bbe"}},"_resolved":"/tmp/2b5ff3af0098776775ad81da2f540172/agenticprimitives-registry-resolution-1.0.0-alpha.24.tgz","_integrity":"sha512-XSNqfqgG7Y43XvbAaiVpttLkCt7cEinKtKqsmO9eq5lfAUMZno1tdHT4+LvjFsvc7oGuviT/p3nFOrIwY653ig==","repository":{"url":"git+https://github.com/agentictrustlabs/agenticprimitives.git","type":"git","directory":"packages/registry-resolution"},"_npmVersion":"11.19.0","description":"The composed typed resolver (spec 346 §6.3/§8/§9): typed name → subject → derived type → (context → relationship) → permitted publication → bindings, returned as SEPARATE signals (subject / context / relationship / bindings / authority / evidence — never ","directories":{},"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.8","@agenticprimitives/types":"1.0.0-alpha.24","@agenticprimitives/situations":"0.0.0-alpha.8","@agenticprimitives/agent-naming":"1.0.0-alpha.24","@agenticprimitives/organization":"0.0.0-alpha.8","@agenticprimitives/registry-kit":"0.0.0-alpha.12","@agenticprimitives/agent-resolution":"0.0.0-alpha.5"},"peerDependencies":{"@agenticprimitives/types":"1.0.0-alpha.24","@agenticprimitives/situations":"0.0.0-alpha.8","@agenticprimitives/agent-naming":"1.0.0-alpha.24","@agenticprimitives/organization":"0.0.0-alpha.8","@agenticprimitives/registry-kit":"0.0.0-alpha.12","@agenticprimitives/agent-resolution":"0.0.0-alpha.5"},"_npmOperationalInternal":{"tmp":"tmp/registry-resolution_1.0.0-alpha.24_1789230560794_0.184790769257408","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-alpha.25":{"name":"@agenticprimitives/registry-resolution","version":"1.0.0-alpha.25","keywords":["agent","naming","registry","resolution","smart-agent","agentic"],"license":"MIT","_id":"@agenticprimitives/registry-resolution@1.0.0-alpha.25","maintainers":[{"name":"richcanvas","email":"richardpedersen3@gmail.com"}],"homepage":"https://github.com/agentictrustlabs/agenticprimitives/tree/master/packages/registry-resolution","bugs":{"url":"https://github.com/agentictrustlabs/agenticprimitives/issues"},"dist":{"shasum":"8d3d09af51302752a958ce38d50ab957cab5781c","tarball":"https://registry.npmjs.org/@agenticprimitives/registry-resolution/-/registry-resolution-1.0.0-alpha.25.tgz","fileCount":38,"integrity":"sha512-hsvQQAqs3ucvpVtPf26PiBjeqXndvtJsQQ+NjaGdLUIk4wzTB6vXRejmgIkEcfwNfR52YLbUXhX9uR/N0i5O7w==","signatures":[{"sig":"MEUCIQCoNYBxDM05nh4iGUIcHy7lHDuNliQAWdFkBW+rzO3AggIgU2qzsMuGgUsVojn5zurLhZyHqfb7E1Pv8o4w5/VvKZQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD8z2EmAM8dIHzjkFQi3gUbvcLMY1xmzIayYYB/S97fWgIgPL6KzH4uWBxPZ+H5TVGF4gRZEIAvVGeUF80rZ91edjo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74015},"main":"./dist/index.js","type":"module","_from":"file:agenticprimitives-registry-resolution-1.0.0-alpha.25.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","test:unit":"vitest run test/unit --passWithNoTests","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"richcanvas","email":"richardpedersen3@gmail.com"},"_resolved":"/tmp/11b872cfd86a743ce23f4debcbc7536f/agenticprimitives-registry-resolution-1.0.0-alpha.25.tgz","_integrity":"sha512-hsvQQAqs3ucvpVtPf26PiBjeqXndvtJsQQ+NjaGdLUIk4wzTB6vXRejmgIkEcfwNfR52YLbUXhX9uR/N0i5O7w==","repository":{"url":"git+https://github.com/agentictrustlabs/agenticprimitives.git","type":"git","directory":"packages/registry-resolution"},"_npmVersion":"11.16.0","description":"The composed typed resolver (spec 346 §6.3/§8/§9): typed name → subject → derived type → (context → relationship) → permitted publication → bindings, returned as SEPARATE signals (subject / context / relationship / bindings / authority / evidence — never ","directories":{},"_nodeVersion":"24.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.8","@agenticprimitives/types":"1.0.0-alpha.25","@agenticprimitives/situations":"0.0.0-alpha.9","@agenticprimitives/agent-naming":"1.0.0-alpha.25","@agenticprimitives/organization":"0.0.0-alpha.9","@agenticprimitives/registry-kit":"0.0.0-alpha.13","@agenticprimitives/agent-resolution":"0.0.0-alpha.6"},"peerDependencies":{"@agenticprimitives/types":"1.0.0-alpha.25","@agenticprimitives/situations":"0.0.0-alpha.9","@agenticprimitives/agent-naming":"1.0.0-alpha.25","@agenticprimitives/organization":"0.0.0-alpha.9","@agenticprimitives/registry-kit":"0.0.0-alpha.13","@agenticprimitives/agent-resolution":"0.0.0-alpha.6"},"_npmOperationalInternal":{"tmp":"tmp/registry-resolution_1.0.0-alpha.25_1789502316833_0.7353320180966949","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-alpha.26":{"_id":"@agenticprimitives/registry-resolution@1.0.0-alpha.26","bugs":{"url":"https://github.com/agentictrustlabs/agenticprimitives/issues"},"dist":{"shasum":"5bbb384164289bbcb7de71aaca746dda699b6946","tarball":"https://registry.npmjs.org/@agenticprimitives/registry-resolution/-/registry-resolution-1.0.0-alpha.26.tgz","fileCount":38,"integrity":"sha512-nX4/WZSraSMOygXSwe6BWYp2devgIspH+x+TOlGm3T9M18QG4Ru7tkBCskAU45Hl3aex/tvmilABj2gUKEEBCg==","signatures":[{"sig":"MEUCIQD8txKFe2F5cetPkge9OxETUaCFIXYXkFtzUnE2AcRl4gIgHYs0Ls/GVZL73DxqfWSi3AmqRZHZk17vLB6WHC78KT0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDhd6b9mRGTC8j8GY+AT9+PBMm/KTB9nEPQq7t/Y2UePAiEAzY3C/hmq97JwT8j+5JYqi2CADerK2YMPX6AW6mByVhs="}],"unpackedSize":74506},"main":"./dist/index.js","name":"@agenticprimitives/registry-resolution","type":"module","_from":"file:agenticprimitives-registry-resolution-1.0.0-alpha.26.tgz","types":"./dist/index.d.ts","author":{"url":"https://agenticprimitives.dev","name":"Agentic Trust Labs"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"license":"MIT","scripts":{"test":"vitest run","build":"tsc -p tsconfig.build.json","clean":"rm -rf dist","test:unit":"vitest run test/unit --passWithNoTests","typecheck":"tsc -p tsconfig.json --noEmit"},"version":"1.0.0-alpha.26","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:30e9377b-bb3d-4fd9-b16c-7faddd801bbe"}},"homepage":"https://agenticprimitives.dev","keywords":["agent","naming","registry","resolution","smart-agent","agentic","agentic-primitives","agenticprimitives","ai-agents","agent-authority","agentic-trust"],"_resolved":"/tmp/ca9df3599ec6f3759d3926134e3b7e42/agenticprimitives-registry-resolution-1.0.0-alpha.26.tgz","_integrity":"sha512-nX4/WZSraSMOygXSwe6BWYp2devgIspH+x+TOlGm3T9M18QG4Ru7tkBCskAU45Hl3aex/tvmilABj2gUKEEBCg==","repository":{"url":"git+https://github.com/agentictrustlabs/agenticprimitives.git","type":"git","directory":"packages/registry-resolution"},"_npmVersion":"11.19.0","description":"The composed typed resolver (spec 346 §6.3/§8/§9): typed name → subject → derived type → (context → relationship) → permitted publication → bindings, returned as SEPARATE signals (subject / context / relationship / bindings / authority / evidence — never ","directories":{},"maintainers":[{"name":"richcanvas","email":"richardpedersen3@gmail.com"}],"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.8","@agenticprimitives/types":"1.0.0-alpha.26","@agenticprimitives/situations":"0.0.0-alpha.10","@agenticprimitives/agent-naming":"1.0.0-alpha.26","@agenticprimitives/organization":"0.0.0-alpha.10","@agenticprimitives/registry-kit":"0.0.0-alpha.14","@agenticprimitives/agent-resolution":"0.0.0-alpha.7"},"peerDependencies":{"@agenticprimitives/types":"1.0.0-alpha.26","@agenticprimitives/situations":"0.0.0-alpha.10","@agenticprimitives/agent-naming":"1.0.0-alpha.26","@agenticprimitives/organization":"0.0.0-alpha.10","@agenticprimitives/registry-kit":"0.0.0-alpha.14","@agenticprimitives/agent-resolution":"0.0.0-alpha.7"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/registry-resolution_1.0.0-alpha.26_1789814983255_0.25808211206599596"}}},"time":{"created":"2026-09-11T20:58:11.230Z","modified":"2026-09-19T10:49:43.544Z","1.0.0-alpha.22":"2026-09-11T20:58:11.575Z","1.0.0-alpha.23":"2026-09-11T22:02:26.187Z","1.0.0-alpha.24":"2026-09-12T16:29:20.917Z","1.0.0-alpha.25":"2026-09-15T19:58:36.917Z","1.0.0-alpha.26":"2026-09-19T10:49:43.362Z"},"bugs":{"url":"https://github.com/agentictrustlabs/agenticprimitives/issues"},"license":"MIT","homepage":"https://agenticprimitives.dev","keywords":["agent","naming","registry","resolution","smart-agent","agentic","agentic-primitives","agenticprimitives","ai-agents","agent-authority","agentic-trust"],"repository":{"url":"git+https://github.com/agentictrustlabs/agenticprimitives.git","type":"git","directory":"packages/registry-resolution"},"description":"The composed typed resolver (spec 346 §6.3/§8/§9): typed name → subject → derived type → (context → relationship) → permitted publication → bindings, returned as SEPARATE signals (subject / context / relationship / bindings / authority / evidence — never ","maintainers":[{"name":"richcanvas","email":"richardpedersen3@gmail.com"}],"readme":"# @agenticprimitives/registry-resolution\n\n> Part of **[Agentic Primitives](https://agenticprimitives.dev)** — the open-source trust substrate for agentic applications: identity that can sign, authority checked at act time, evidence the owner carries. [Developer kit](https://github.com/agentictrustlabs/agentic-primitives) · [All packages](https://agenticprimitives.dev/developers)\n\nThe composed **typed-name resolver** of spec 346: given a typed handle (`rpedersen.me`, `vault.svc@richcanvas.org`,\n`field.workspace@richcanvas.org`, `discovery.registry`) and a caller posture, it returns the subject, its\nderived type, the issuing context and the live relationship (for `x@ctx` names), the permitted deployment\nbindings, the delegations it *saw*, and the registry/directory evidence — as **six separate signals**.\nIt never returns a trust score and never authorizes anything.\n\n```\nparseAgentName ─▶ checkTypedName (suffix ↔ on-chain atl:agentType ↔ root; fail closed)\n   │ x@ctx: issuance (posture-gated) ─▶ basis live? (membership · role gate · delegation) ─▶ ContextualAgentReferenceV1\n   ▼\ndiscovery policy (per-agent or the per-type default) ─▶ is THIS caller admitted? (one mechanism)\n   ▼\npublication via the caller's reference kind (ans-name | private-grant | direct-invitation) ─▶ bindings\n   ▼\nregistry entries + directory evidence ─▶ TypedResolutionResultV1\n```\n\n## Usage\n\n```ts\nimport { resolveTypedName } from '@agenticprimitives/registry-resolution';\n\nconst out = await resolveTypedName('rpedersen.me@richcanvas.org', { posture: 'grant', requester, grantId, presentation }, ports);\nif (out.ok) {\n  out.result.subject;       // { agentId, derivedType: 'person', root: 'person', name, legacy: false, typeConsistent: true }\n  out.result.context;       // { agentId: richcanvas.org's SA, derivedType: 'org', name: 'richcanvas.org' }\n  out.result.relationship;  // { membershipId, roleAssignmentId?, delegationHash, current: true, basis: 'membership' }\n  out.result.bindings;      // { host, agentCardUrl, a2aEndpoint, surfaces, publication } — from the signed publication\n  out.result.authority;     // { note: 'resolution-is-not-authority', delegationsSeen: [...] }\n  out.result.evidence;      // { registryEntries, assurance, directory }\n} else {\n  out.reason;               // 'unregistered' | 'type_mismatch' | 'issuance_not_found' | 'basis_not_current' | 'not_permitted' | …\n}\n```\n\n`ports` (`TypedResolverPorts`) are all injected: the typed-naming read (`AgentNamingClient.checkTypedName`),\nthe context's issuance surface, delegation liveness, membership/role reads, the agent-resolution composed\nresolver, registry evidence, and optionally directory evidence, workspace reads and per-agent policies.\n\n## Flows (spec 346 §9)\n\n| Function | What it plans |\n| --- | --- |\n| `acceptConnectInvitation(invitation, acceptor, now)` | shape + expiry + recipient checks; returns the grant + initial publication the invitee stores. The registry records nothing. |\n| `planContextualNameIssuance(input, registryId)` | after a join is accepted: the unsigned `ContextualNameIssuanceV1` body (`kind: 'reference'`, membership + delegation basis) + the `CONTEXTUAL_NAME_ISSUED` log event. |\n| `planScopedNameIssuance(input, registryId)` | a context issuing `vault.svc@…` / `architecture.team@…` in its own namespace (`operated-by` / `chartered` basis). |\n| `revokeContextualName(issuance, registryId, now)` | deactivates the contextual name; the canonical handle is untouched. |\n\nReferral admission (§9.3) lives in `registry-kit` (`admitRegistryEntry` with a sponsor).\n\n## Posture defaults (spec 346 §8.1)\n\n`defaultDiscoveryPolicyForType(t)` — person: public name, unlisted, grant-resolved; org / service / registry:\npublic; team / workspace: consented listing, authenticated resolution; treasury: unlisted,\ngrant-resolved. `callerAdmittedBy(policy, posture)` is the single admission rule.\n\n## What this package refuses to do\nHold state, open a transport, decide authorization, rank, or fall back. See `CLAUDE.md`.\n","readmeFilename":"README.md","author":{"url":"https://agenticprimitives.dev","name":"Agentic Trust Labs"}}