specs/git_ns/namespace/bind/v0_1/payload library

Classes

GitNamespace
The VTC's binding to one owner on one forge.
Payload
A VTC administrator binds the VTC to one owner on one forge, so that the VTC governs who may create, own, maintain and commit to repositories under it. In bridge mode the response says where to send the forge owner to prove control; the namespace stays pending until that proof arrives.
Response
The namespace as recorded, and where to go next if it is still pending.
ResponseNext
Present when the namespace is pending: where the administrator goes to prove control of the forge owner (install the community's forge app, or sign in to the forge and authorise the bridge).

Extension Types

GitNamespaceKind
Whether the owner is an organisation or a personal account, as the forge reports it. Present once known: a bridge-mode namespace learns it when binding completes, and a manual-mode namespace MAY never learn it.
GitNamespaceMode
bridge — a bridge service acts on the forge for this namespace (creates repositories, projects roles, reports drift). manual — no automation; people with forge access carry out the steps the VTC names, and the VTC governs the rights alone.
GitNamespaceState
pending — binding has started and the forge-side proof has not arrived yet. bound — the VTC governs rights under this namespace.
PayloadMode
bridge — a bridge service serving this forge proves control and then acts on the forge. manual — no automation; the binding admin declares the namespace and people with forge access carry out the forge-side steps.

Constants

payloadSchemaJson → const String
This specification's payload schema, as JSON text.
responsePayloadSchemaJson → const String
As payloadSchemaJson, for the success-response variant.
responseSpec → const SpecPolicy
The SPEC §7.2 policy for the success-response variant.
responseTypeUri → const String
The success-response form of typeUri (SPEC §4.4.1).
spec → const SpecPolicy
The SPEC §7.2 policy for the request variant, taken from this specification's front matter.
typeUri → const String
The Trust Task type URI this library's Payload is carried under.

Typedefs

Ext = Map<String, dynamic>
Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.
ForgeHost = String
The lowercased DNS host of a forge: github.com, a GitHub Enterprise Server host, codeberg.org, or a self-hosted Forgejo instance such as git.example.org. No scheme, no port, no path. The host is a segment of every resource, so a right never crosses forges.
NamespaceId = String
The VTC's opaque identifier for a namespace, assigned when it is bound. Stable for the life of the binding; never reused for another binding.
Segment = String
One lowercased owner or repository name. Forges compare these case-insensitively, so the wire form is always lowercase and a producer lowercases before sending. A leading . is refused, which rules out . and ...