HyperNet CoreDocumentation
stable / Version 0.9.0Core and Suite manuals
Reference library
Operate a network
On this page
  1. Wire interface
  2. Delegation and revocation

Tier administration#

Tier rank orders policy for display. Explicit grant actions and scopes determine authority. A current tier restricts every grant pinned to that tier's authenticated history; an older grant reference cannot restore removed rights. Changing a tier does not rewrite grants or silently increase their actions, scopes, limits or delegation depth. Each operation intersects the grant with current actions, exact scopes, quotas and delegation depth across its complete parent chain. Removing SearchCatalogue can leave ReadPage available. Narrower quotas constrain actual use rather than invalidating surviving rights. New grants must fit the parent's complete current intersection; dormant rights or excess depth cannot be issued in anticipation of a later policy widening. Revoked grants cannot be restored by a tier edit or by restoring an old local checkpoint.

The separate Suite supports list, context, proposal preview and reviewed apply. Tier creation and editing require AdministerPolicy9 in every old and new scope. Applications cannot administer tiers. Listing all tiers requires network-scoped administration. A scoped administrator can request an exact permitted tier's context or create a tier inside the administrative grant's scope. At most256 active tiers are admitted; IDs, generations and exact predecessors are durable.

Wire interface#

Discovery uses [200,1,action,grantId,tierIdOrAfterOrNull,minimumPoint], with action AuthorityTierContext or AuthorityTierList. Discovery has revision0 and no expected versions. Context returns [201,1,action,versions,recordBytesList]; list adds a sixth next-tier-ID-or-null field and returns up to32 tier rows. The versions cover the administrator's complete capability closure and selected current tiers.

A specification is [id,rank,label,actions,scopes,maximumDelegationDepth,limits]. Preview and apply use [200,1,action,grantId,previousTierBytesOrNull,specification,expectedSnapshot,token]. Action is AuthorityTierPreview or AuthorityTierApply. The signed resource is the tier ID; revision is1 for creation or the exact previous generation plus1. The signed expected versions equal expectedSnapshot's references. A proposal digest binds network, incarnation, requester, grant, previous bytes, specification and exact dependencies. Read-only progress may advance the causal point without changing that proposal.

The certified preview response is [201,1,action,versions,previewPage] where previewPage = [requestDigest,effectiveDigest,impactDigest,impactCount,pageIndex, impacts,nextPageToken]. The encompassing signed intent supplies operation identity and Snapshot; the signed OperationResult supplies Permit/Refuse and its refusal code. These fields are the operational mapping of PolicyPreview106. A permitted page has code0; refusal never presents a partial preview as complete.

EffectiveDigest binds the exact proposal and all current governance and domain versions. Impacts conservatively enumerate records whose dependencies refer to the affected tier or grant, recursively, with a digest of each subject's complete affected version set and the proposal digest. These are affected dependencies, not claims that each changes its effective permission. The proposed specification or grant and the authenticated capability closure explain the resulting restrictions. Each impact is [category,id,beforeDigest,proposalDigest,4]. Each category/ID appears once; beforeDigest hashes the canonical array of its exact affected VersionRefs, sorted by kind and ID. Reason4 denotes a capability intersection requiring review. Categories follow PolicyContract's Impact contract.

Dependency extraction includes validated recipient and sealed-record payloads, native author and reviewer statements, and signed application consent. Opaque content and foreign signed metadata are not decoded as local authority dependencies.

Pages hold at most128 entries and the complete preview at most65536. The client verifies consecutive page indexes, identical request/effective/impact digests, unique entries and the complete count and digest before offering reviewed apply. A cursor cannot be moved to a changed policy view. Apply supplies effectiveDigest as token, rechecks complete current authority and exact dependencies, and compares the policy view atomically at commit. A concurrent relevant change refuses with StaleSnapshot12; an invalid continuation returns CursorScope32; excess impacts return PreviewLimit33. Apply returns the exact new record and creation height. Signed mandatory mutation evidence and the record commit together.

Delegation and revocation#

AuthorityGrantPreview and AuthorityGrantApply wrap existing exact delegation or revocation parameters: [200,1,action,originalParametersBytes,tokenOrNull]. The original action is AuthorityDelegateGrant or AuthorityRevokeGrant. The outer signed resource, revision, expected dependencies and causal floor retain the original operation's meaning. Preview uses the same seven-field preview response; apply compares the same complete policy view before the original mutation runs. Its reply is the original finite mutation result with action AuthorityGrantApply.

Delegation still requires action11 and attenuation of parent and current tier rights, scopes, validity, quotas and depth. Revocation still requires action12, the exact target and current authorising chain. Its tombstone permanently rejects the target and descendant chains. Preview creates no grant, reservation or audit mutation. Apply evidence retains the signed outer review token and derives the original exact grant or tombstone. Existing direct APIs remain available to programmatic clients; the installed administrative workflow uses reviewed apply.

HyperNet Core / DocumentationBack to top

Search documentation

Press Escape to close

Loading search...

    Reading appearance

    Choose colours, surfaces and text independently. These settings are saved for this documentation site in this browser.

    Flat surfaces remove decorative materials. Typography is a separate choice. Increased contrast uses the Contrast palette. System forced colours always take precedence.