Keyed `<repo key>.<ref hash>.<generation moved from>`. Two writers that read the same generation both try to create the same key, and the PDS accepts only the first; the dev.knotless.ref update travelling with it in the same applyWrites is refused along with it. Never updated.
any
Any valid record key
Properties
createdAt
string
datetime
Required
An RFC 3339 formatted timestamp.
from
string
Optional
The hex object ID the ref pointed at before; absent when the ref is new.
maxLength: 64 bytesminLength: 40 bytesgeneration
integer
Required
The generation the ref moved from.
minimum: 0name
string
Required
The full ref name, such as refs/heads/main.
maxLength: 1024 bytespack
string
record-key
Optional
The record key of the dev.knotless.pack written with the move, if any.
pusher
string
did
Optional
The account that moved the ref, when not the repository's owner: a collaborator or runner pushing through the gateway, which sets it from the caller's verified service token. Readers credit it only while the repository names it among its collaborators or runners.
repo
string
tid
Required
The `key` of the dev.knotless.repo the ref belongs to.
to
string
Optional
The hex object ID the ref points at after; absent when the ref is deleted.
maxLength: 64 bytesminLength: 40 bytesView raw schema
{
"description": "Keyed `<repo key>.<ref hash>.<generation moved from>`. Two writers that read the same generation both try to create the same key, and the PDS accepts only the first; the dev.knotless.ref update travelling with it in the same applyWrites is refused along with it. Never updated.",
"key": "any",
"record": {
"properties": {
"createdAt": {
"format": "datetime",
"type": "string"
},
"from": {
"description": "The hex object ID the ref pointed at before; absent when the ref is new.",
"maxLength": 64,
"minLength": 40,
"type": "string"
},
"generation": {
"description": "The generation the ref moved from.",
"minimum": 0,
"type": "integer"
},
"name": {
"description": "The full ref name, such as refs/heads/main.",
"maxLength": 1024,
"type": "string"
},
"pack": {
"description": "The record key of the dev.knotless.pack written with the move, if any.",
"format": "record-key",
"type": "string"
},
"pusher": {
"description": "The account that moved the ref, when not the repository's owner: a collaborator or runner pushing through the gateway, which sets it from the caller's verified service token. Readers credit it only while the repository names it among its collaborators or runners.",
"format": "did",
"type": "string"
},
"repo": {
"description": "The `key` of the dev.knotless.repo the ref belongs to.",
"format": "tid",
"type": "string"
},
"to": {
"description": "The hex object ID the ref points at after; absent when the ref is deleted.",
"maxLength": 64,
"minLength": 40,
"type": "string"
}
},
"required": [
"repo",
"name",
"generation",
"createdAt"
],
"type": "object"
},
"type": "record"
}