UBC Allocation v1¶
Source schema: doc/schemas/ubc-allocation.v1.schema.json
Machine-readable schema for Universal Basic Compute allocations, including guaranteed access modes and recognition through federation or FIP bridge paths.
Governing Basis¶
doc/normative/40-constitution/CONSTITUTION.mddoc/normative/50-constitutional-ops/UNIVERSAL-BASIC-COMPUTE.mddoc/normative/50-constitutional-ops/UBC-LIMIT-PROFILES.md
Fields¶
| Field | Required | Shape | Description |
|---|---|---|---|
schema/v |
yes |
const: 1 |
Schema version. |
allocation_id |
yes |
string | Stable identifier of this allocation record. |
subject_ref |
yes |
string | Stable anonymous handle of the person receiving the compute floor. |
federation_id |
yes |
string | |
attestation_ref |
yes |
string | Reference to the Proof-of-Personhood attestation that justifies the allocation. |
recognition_source |
yes |
enum: federation_local, federation_cross_recognition, fip_bridge |
Which recognition path made this allocation valid in the current federation. |
recognition_ref |
yes |
string | Reference to the recognizing federation or the FIP bridge. |
measurement_period |
yes |
string | Named accounting window used to measure and settle the allocation. |
valid_from |
yes |
string | |
valid_until |
no |
string | |
compute_unit |
yes |
string | Declared unit of account for the allocated compute floor. |
portability_scope |
yes |
enum: local, trans_federation_limited, trans_federation_extended |
How far this concrete allocation may travel beyond the issuing federation. |
guaranteed_modes |
yes |
ref: #/$defs/guaranteedModes |
Guaranteed access contract for emergency, communication, and care paths. |
funding_policy_ref |
yes |
string | Reference to the policy defining who funds the allocation floor. |
limit_policy_ref |
yes |
string | Reference to the profile that defines communication and care limits. |
policy_annotations |
no |
object | |
created_at |
yes |
string |
Definitions¶
| Definition | Shape | Description |
|---|---|---|
modeAccess |
object | |
guaranteedModes |
object |
Conditional Rules¶
Rule 1¶
Constraint:
{
"properties": {
"guaranteed_modes": {
"properties": {
"emergency": {
"properties": {
"access": {
"const": true
},
"limit_profile": {
"const": "unlimited"
}
}
},
"communication": {
"properties": {
"access": {
"const": true
}
}
},
"care": {
"properties": {
"access": {
"const": true
}
}
}
}
}
}
}
Rule 2¶
When:
{
"properties": {
"recognition_source": {
"const": "fip_bridge"
}
},
"required": [
"recognition_source"
]
}
Then:
{
"properties": {
"portability_scope": {
"const": "trans_federation_limited"
},
"guaranteed_modes": {
"properties": {
"communication": {
"properties": {
"limit_profile": {
"const": "limited"
}
},
"required": [
"limit_ref"
]
},
"care": {
"properties": {
"limit_profile": {
"const": "limited"
}
},
"required": [
"limit_ref"
]
}
}
}
}
}
Rule 3¶
When:
{
"properties": {
"portability_scope": {
"const": "trans_federation_extended"
}
},
"required": [
"portability_scope"
]
}
Then:
{
"properties": {
"guaranteed_modes": {
"properties": {
"communication": {
"required": [
"limit_ref"
]
},
"care": {
"required": [
"limit_ref"
]
}
}
}
}
}
Field Semantics¶
schema/v¶
- Required:
yes - Shape: const:
1
Schema version.
allocation_id¶
- Required:
yes - Shape: string
Stable identifier of this allocation record.
subject_ref¶
- Required:
yes - Shape: string
Stable anonymous handle of the person receiving the compute floor.
federation_id¶
- Required:
yes - Shape: string
attestation_ref¶
- Required:
yes - Shape: string
Reference to the Proof-of-Personhood attestation that justifies the allocation.
recognition_source¶
- Required:
yes - Shape: enum:
federation_local,federation_cross_recognition,fip_bridge
Which recognition path made this allocation valid in the current federation.
recognition_ref¶
- Required:
yes - Shape: string
Reference to the recognizing federation or the FIP bridge.
measurement_period¶
- Required:
yes - Shape: string
Named accounting window used to measure and settle the allocation.
valid_from¶
- Required:
yes - Shape: string
valid_until¶
- Required:
no - Shape: string
compute_unit¶
- Required:
yes - Shape: string
Declared unit of account for the allocated compute floor.
portability_scope¶
- Required:
yes - Shape: enum:
local,trans_federation_limited,trans_federation_extended
How far this concrete allocation may travel beyond the issuing federation.
guaranteed_modes¶
- Required:
yes - Shape: ref:
#/$defs/guaranteedModes
Guaranteed access contract for emergency, communication, and care paths.
Governing basis:
- doc/normative/50-constitutional-ops/UNIVERSAL-BASIC-COMPUTE.md
- doc/normative/50-constitutional-ops/UBC-LIMIT-PROFILES.md
funding_policy_ref¶
- Required:
yes - Shape: string
Reference to the policy defining who funds the allocation floor.
limit_policy_ref¶
- Required:
yes - Shape: string
Reference to the profile that defines communication and care limits.
policy_annotations¶
- Required:
no - Shape: object
created_at¶
- Required:
yes - Shape: string
Definition Semantics¶
$defs.modeAccess¶
- Shape: object
$defs.guaranteedModes¶
- Shape: object