dev.knotless.defs

lexicons.knotless.dev

Documentation

actorView object

An account, as an appview shows it beside what it did.

Properties

avatar string uri Optional

The account's picture, as in dev.knotless.getProfile#profileView.

did string did Required

A decentralized identifier (DID).

handle string Required

The handle the account claims, when it resolves back to it; else the DID.

View raw schema
{
  "description": "An account, as an appview shows it beside what it did.",
  "properties": {
    "avatar": {
      "description": "The account's picture, as in dev.knotless.getProfile#profileView.",
      "format": "uri",
      "type": "string"
    },
    "did": {
      "format": "did",
      "type": "string"
    },
    "handle": {
      "description": "The handle the account claims, when it resolves back to it; else the DID.",
      "type": "string"
    }
  },
  "required": [
    "did",
    "handle"
  ],
  "type": "object"
}
actorViewerState object

What the account asking a query has to do with an account.

Properties

blocking string at-uri Optional

Its dev.knotless.block record keeping the account out of all its repositories, if it has one.

following string at-uri Optional

Its dev.knotless.follow record naming the account, if it follows it.

View raw schema
{
  "description": "What the account asking a query has to do with an account.",
  "properties": {
    "blocking": {
      "description": "Its dev.knotless.block record keeping the account out of all its repositories, if it has one.",
      "format": "at-uri",
      "type": "string"
    },
    "following": {
      "description": "Its dev.knotless.follow record naming the account, if it follows it.",
      "format": "at-uri",
      "type": "string"
    }
  },
  "type": "object"
}
byteSlice object

A span of a text, by its UTF-8 bytes, counted from zero: the start inclusive, the end exclusive.

Properties

byteEnd integer Required

No description available.

minimum: 0
byteStart integer Required

No description available.

minimum: 0
View raw schema
{
  "description": "A span of a text, by its UTF-8 bytes, counted from zero: the start inclusive, the end exclusive.",
  "properties": {
    "byteEnd": {
      "minimum": 0,
      "type": "integer"
    },
    "byteStart": {
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "byteStart",
    "byteEnd"
  ],
  "type": "object"
}
changesView object

What a pull brings in: for a merged one, what its merge brought into the base; otherwise what its branch has since it left the base.

Properties

commits array of ref#commitView Required

Oldest first.

files array of ref#fileDiffView Required

No description available.

head string Optional

For an open pull, the hex object ID of the commit its branch is at: what its checks and reviews are of.

repo ref #repoViewBasic Required

The repository whose commit pages show its commits.

View raw schema
{
  "description": "What a pull brings in: for a merged one, what its merge brought into the base; otherwise what its branch has since it left the base.",
  "properties": {
    "commits": {
      "description": "Oldest first.",
      "items": {
        "ref": "#commitView",
        "type": "ref"
      },
      "type": "array"
    },
    "files": {
      "items": {
        "ref": "#fileDiffView",
        "type": "ref"
      },
      "type": "array"
    },
    "head": {
      "description": "For an open pull, the hex object ID of the commit its branch is at: what its checks and reviews are of.",
      "type": "string"
    },
    "repo": {
      "description": "The repository whose commit pages show its commits.",
      "ref": "#repoViewBasic",
      "type": "ref"
    }
  },
  "required": [
    "repo",
    "commits",
    "files"
  ],
  "type": "object"
}
checkImageView object

A picture a check made: screenshots of the pages a change moved, say.

Properties

alt string Required

What it shows.

url string Required

Where this appview serves it, as a path.

View raw schema
{
  "description": "A picture a check made: screenshots of the pages a change moved, say.",
  "properties": {
    "alt": {
      "description": "What it shows.",
      "type": "string"
    },
    "url": {
      "description": "Where this appview serves it, as a path.",
      "type": "string"
    }
  },
  "required": [
    "alt",
    "url"
  ],
  "type": "object"
}
checkView object

The newest run of a workflow, as a runner the repository names in its record reported it.

Properties

commit string Required

The commit it ran at, in hex.

error string Optional

Why it could not run.

finishedAt string datetime Optional

An RFC 3339 formatted timestamp.

images array of ref#checkImageView Required

The pictures it made to be looked at, in order.

repo ref #repoViewBasic Required

The repository it is of, whose pages show it.

skipped string Optional

For a `success` that ran nothing, as the change touched none of the paths its workflow names: why.

startedAt string datetime Required

An RFC 3339 formatted timestamp.

status string Required

`queued` is a run filed and waiting for a job on its runner, no step started yet.

Known values: queued, running, success, failure, error, cancelled
uri string at-uri Required

Its dev.knotless.check record.

workflow string Required

No description available.

View raw schema
{
  "description": "The newest run of a workflow, as a runner the repository names in its record reported it.",
  "properties": {
    "commit": {
      "description": "The commit it ran at, in hex.",
      "type": "string"
    },
    "error": {
      "description": "Why it could not run.",
      "type": "string"
    },
    "finishedAt": {
      "format": "datetime",
      "type": "string"
    },
    "images": {
      "description": "The pictures it made to be looked at, in order.",
      "items": {
        "ref": "#checkImageView",
        "type": "ref"
      },
      "type": "array"
    },
    "repo": {
      "description": "The repository it is of, whose pages show it.",
      "ref": "#repoViewBasic",
      "type": "ref"
    },
    "skipped": {
      "description": "For a `success` that ran nothing, as the change touched none of the paths its workflow names: why.",
      "type": "string"
    },
    "startedAt": {
      "format": "datetime",
      "type": "string"
    },
    "status": {
      "description": "`queued` is a run filed and waiting for a job on its runner, no step started yet.",
      "knownValues": [
        "queued",
        "running",
        "success",
        "failure",
        "error",
        "cancelled"
      ],
      "type": "string"
    },
    "uri": {
      "description": "Its dev.knotless.check record.",
      "format": "at-uri",
      "type": "string"
    },
    "workflow": {
      "type": "string"
    }
  },
  "required": [
    "uri",
    "repo",
    "workflow",
    "status",
    "commit",
    "startedAt",
    "images"
  ],
  "type": "object"
}
commentView object

Something said on a pull or an issue.

Properties

author ref #actorView Required

No description available.

body string Optional

What it says, as its author wrote it, in Markdown.

commit string Optional

For a review of a pull, the hex object ID of the head it looked at; for a comment on its lines, the commit they are in.

createdAt string datetime Required

An RFC 3339 formatted timestamp.

html string Required

What it says, its Markdown made into HTML: raw HTML shown as text, and links made relative to the repository.

line ref #lineView Optional

For a comment on a pull's lines, which, as they stand now.

reactions array of ref#reactionCountView Optional

How accounts reacted to it, by content, in the order dev.knotless.defs#reactionContent lists them. Absent when none did.

reply string at-uri Optional

The comment starting the thread on a pull's lines that this answers.

resolved boolean Optional

For a comment starting a thread on a pull's lines, whether the thread is resolved.

review string at-uri Optional

The review this was sent with, as one of its line comments.

updatedAt string datetime Optional

When its author last changed it, if they have.

uri string at-uri Optional

Its dev.knotless.comment record.

verdict string Optional

For a review, what it found.

Known values: approve, changes
View raw schema
{
  "description": "Something said on a pull or an issue.",
  "properties": {
    "author": {
      "ref": "#actorView",
      "type": "ref"
    },
    "body": {
      "description": "What it says, as its author wrote it, in Markdown.",
      "type": "string"
    },
    "commit": {
      "description": "For a review of a pull, the hex object ID of the head it looked at; for a comment on its lines, the commit they are in.",
      "type": "string"
    },
    "createdAt": {
      "format": "datetime",
      "type": "string"
    },
    "html": {
      "description": "What it says, its Markdown made into HTML: raw HTML shown as text, and links made relative to the repository.",
      "type": "string"
    },
    "line": {
      "description": "For a comment on a pull's lines, which, as they stand now.",
      "ref": "#lineView",
      "type": "ref"
    },
    "reactions": {
      "description": "How accounts reacted to it, by content, in the order dev.knotless.defs#reactionContent lists them. Absent when none did.",
      "items": {
        "ref": "#reactionCountView",
        "type": "ref"
      },
      "type": "array"
    },
    "reply": {
      "description": "The comment starting the thread on a pull's lines that this answers.",
      "format": "at-uri",
      "type": "string"
    },
    "resolved": {
      "description": "For a comment starting a thread on a pull's lines, whether the thread is resolved.",
      "type": "boolean"
    },
    "review": {
      "description": "The review this was sent with, as one of its line comments.",
      "format": "at-uri",
      "type": "string"
    },
    "updatedAt": {
      "description": "When its author last changed it, if they have.",
      "format": "datetime",
      "type": "string"
    },
    "uri": {
      "description": "Its dev.knotless.comment record.",
      "format": "at-uri",
      "type": "string"
    },
    "verdict": {
      "description": "For a review, what it found.",
      "knownValues": [
        "approve",
        "changes"
      ],
      "type": "string"
    }
  },
  "required": [
    "author",
    "createdAt",
    "html"
  ],
  "type": "object"
}
commitAuthorView object

Who wrote a commit or helped to: by the name git gives, and by account when that is one of the repository's people whose address it is.

Properties

actor ref #actorView Optional

No description available.

agent string Optional

The coding agent whose address it is, when it is one the pages know the face of.

Known values: claude
name string Required

The name git records.

View raw schema
{
  "description": "Who wrote a commit or helped to: by the name git gives, and by account when that is one of the repository's people whose address it is.",
  "properties": {
    "actor": {
      "ref": "#actorView",
      "type": "ref"
    },
    "agent": {
      "description": "The coding agent whose address it is, when it is one the pages know the face of.",
      "knownValues": [
        "claude"
      ],
      "type": "string"
    },
    "name": {
      "description": "The name git records.",
      "type": "string"
    }
  },
  "required": [
    "name"
  ],
  "type": "object"
}
commitRefView object

A commit, by its object name.

Properties

sha string Required

In hex.

View raw schema
{
  "description": "A commit, by its object name.",
  "properties": {
    "sha": {
      "description": "In hex.",
      "type": "string"
    }
  },
  "required": [
    "sha"
  ],
  "type": "object"
}
commitView object

A commit, with the accounts that wrote it where the repository's pages believe their claims (dev.knotless.emails).

Properties

coauthors array of ref#commitAuthorView Required

Who its message's `Co-authored-by` trailers name.

committedAt string datetime Optional

When it was committed: what history runs in, as its author's date need not.

committer ref #commitAuthorView Optional

Who committed it, when someone other than its author did.

date string datetime Required

When its author made it, which a rebase or a squash keeps.

message string Required

Its message, less the last line naming the pull it merged, if it did.

parents array of ref#commitRefView Required

No description available.

pull ref #itemViewBasic Optional

The pull its message's last line names, as a squash merge records it, when that is a pull on this repository.

sha string Required

Its object name, in hex.

View raw schema
{
  "description": "A commit, with the accounts that wrote it where the repository's pages believe their claims (dev.knotless.emails).",
  "properties": {
    "author": {
      "ref": "#commitAuthorView",
      "type": "ref"
    },
    "coauthors": {
      "description": "Who its message's `Co-authored-by` trailers name.",
      "items": {
        "ref": "#commitAuthorView",
        "type": "ref"
      },
      "type": "array"
    },
    "committedAt": {
      "description": "When it was committed: what history runs in, as its author's date need not.",
      "format": "datetime",
      "type": "string"
    },
    "committer": {
      "description": "Who committed it, when someone other than its author did.",
      "ref": "#commitAuthorView",
      "type": "ref"
    },
    "date": {
      "description": "When its author made it, which a rebase or a squash keeps.",
      "format": "datetime",
      "type": "string"
    },
    "message": {
      "description": "Its message, less the last line naming the pull it merged, if it did.",
      "type": "string"
    },
    "parents": {
      "items": {
        "ref": "#commitRefView",
        "type": "ref"
      },
      "type": "array"
    },
    "pull": {
      "description": "The pull its message's last line names, as a squash merge records it, when that is a pull on this repository.",
      "ref": "#itemViewBasic",
      "type": "ref"
    },
    "sha": {
      "description": "Its object name, in hex.",
      "type": "string"
    }
  },
  "required": [
    "sha",
    "parents",
    "author",
    "coauthors",
    "date",
    "message"
  ],
  "type": "object"
}
diffRowView object

One row of a file's diff: a hunk header, a note, or a line with its old and new numbers.

Properties

kind string Required

`h` for a hunk header, `x` for a note, `a` for a line added, `d` for one removed, or empty for context.

line boolean Required

Whether it is a line of the file.

new integer Optional

Its number after.

minimum: 0
old integer Optional

Its number before.

minimum: 0
text string Required

No description available.

View raw schema
{
  "description": "One row of a file's diff: a hunk header, a note, or a line with its old and new numbers.",
  "properties": {
    "kind": {
      "description": "`h` for a hunk header, `x` for a note, `a` for a line added, `d` for one removed, or empty for context.",
      "type": "string"
    },
    "line": {
      "description": "Whether it is a line of the file.",
      "type": "boolean"
    },
    "new": {
      "description": "Its number after.",
      "minimum": 0,
      "type": "integer"
    },
    "old": {
      "description": "Its number before.",
      "minimum": 0,
      "type": "integer"
    },
    "text": {
      "type": "string"
    }
  },
  "required": [
    "kind",
    "line",
    "text"
  ],
  "type": "object"
}
facet object

Where a text says more than its words, shaped as app.bsky.richtext.facet: the span it covers and what that span is. A pull's, an issue's or a comment's body has its own, and a pull's or an issue's title its own.

Properties

features array of union Required

What the span is. Kinds unknown to a reader are passed over.

maxLength: 8 items
Known types:
index ref #byteSlice Required

No description available.

View raw schema
{
  "description": "Where a text says more than its words, shaped as app.bsky.richtext.facet: the span it covers and what that span is. A pull's, an issue's or a comment's body has its own, and a pull's or an issue's title its own.",
  "properties": {
    "features": {
      "description": "What the span is. Kinds unknown to a reader are passed over.",
      "items": {
        "refs": [
          "#mention"
        ],
        "type": "union"
      },
      "maxLength": 8,
      "type": "array"
    },
    "index": {
      "ref": "#byteSlice",
      "type": "ref"
    }
  },
  "required": [
    "index",
    "features"
  ],
  "type": "object"
}
fileDiffView object

One file of a diff, or why its rows are not shown.

Properties

added integer Required

Lines added.

minimum: 0
hunkCount integer Optional

Of those rows, how many are hunk headers, which a page may draw taller than a line.

minimum: 0
new string Required

Its path after.

note string Optional

Why its rows are not shown, when they are not.

old string Required

Its path before.

ranges string Optional

The ranges its highlighting paints, encoded as the pages read them.

removed integer Required

Lines removed.

minimum: 0
rowCount integer Optional

Where its rows are left out but would be shown, as dev.knotless.getThread's filesOnly leaves them, how many there are: the room a page keeps for them until they come.

minimum: 0
rows array of ref#diffRowView Required

No description available.

status string Required

No description available.

Known values: added, deleted, renamed, modified
View raw schema
{
  "description": "One file of a diff, or why its rows are not shown.",
  "properties": {
    "added": {
      "description": "Lines added.",
      "minimum": 0,
      "type": "integer"
    },
    "hunkCount": {
      "description": "Of those rows, how many are hunk headers, which a page may draw taller than a line.",
      "minimum": 0,
      "type": "integer"
    },
    "new": {
      "description": "Its path after.",
      "type": "string"
    },
    "note": {
      "description": "Why its rows are not shown, when they are not.",
      "type": "string"
    },
    "old": {
      "description": "Its path before.",
      "type": "string"
    },
    "ranges": {
      "description": "The ranges its highlighting paints, encoded as the pages read them.",
      "type": "string"
    },
    "removed": {
      "description": "Lines removed.",
      "minimum": 0,
      "type": "integer"
    },
    "rowCount": {
      "description": "Where its rows are left out but would be shown, as dev.knotless.getThread's filesOnly leaves them, how many there are: the room a page keeps for them until they come.",
      "minimum": 0,
      "type": "integer"
    },
    "rows": {
      "items": {
        "ref": "#diffRowView",
        "type": "ref"
      },
      "type": "array"
    },
    "status": {
      "knownValues": [
        "added",
        "deleted",
        "renamed",
        "modified"
      ],
      "type": "string"
    }
  },
  "required": [
    "old",
    "new",
    "status",
    "added",
    "removed",
    "rows"
  ],
  "type": "object"
}
followState object

An account's followers, as following or unfollowing it leaves them.

Properties

followersCount integer Required

How many accounts follow it now.

minimum: 0
following string at-uri Optional

The asker's dev.knotless.follow record naming it; absent once unfollowed.

View raw schema
{
  "description": "An account's followers, as following or unfollowing it leaves them.",
  "properties": {
    "followersCount": {
      "description": "How many accounts follow it now.",
      "minimum": 0,
      "type": "integer"
    },
    "following": {
      "description": "The asker's dev.knotless.follow record naming it; absent once unfollowed.",
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "followersCount"
  ],
  "type": "object"
}
image object

A picture a pull's, an issue's or a comment's body shows, attached so its author's PDS keeps it. The body links to it on that PDS, as `com.atproto.sync.getBlob` serves it, saying what it shows as Markdown's alt text; readers may show it from elsewhere, as dev.knotless.getAttachment does.

Properties

image blob Required

No description available.

maxSize: 1.0 MB
View raw schema
{
  "description": "A picture a pull's, an issue's or a comment's body shows, attached so its author's PDS keeps it. The body links to it on that PDS, as `com.atproto.sync.getBlob` serves it, saying what it shows as Markdown's alt text; readers may show it from elsewhere, as dev.knotless.getAttachment does.",
  "properties": {
    "image": {
      "accept": [
        "image/png",
        "image/jpeg",
        "image/webp",
        "image/gif"
      ],
      "maxSize": 1000000,
      "type": "blob"
    }
  },
  "required": [
    "image"
  ],
  "type": "object"
}
itemView object

A pull or an issue in a list of them.

Properties

comments integer Required

How many comments are on it, its own body aside.

minimum: 0
createdAt string datetime Required

An RFC 3339 formatted timestamp.

draft boolean Optional

A pull its author has not marked ready to merge. Not, when absent.

kind string Required

No description available.

Known values: pull, issue
labels array of refdev.knotless.repo#label Optional

The labels it carries, as the repository defines them, in the order it does. Absent when it carries none.

reviewers array of ref#actorView Optional

Those a pull's author asks to review it, in the order asked. Absent when it asks no one.

state string Required

A merged pull is merged; a closed one, or an issue, closed.

Known values: open, closed, merged
title string Required

No description available.

updatedAt string datetime Optional

When its author last changed its title or body, if they have.

uri string at-uri Required

Its dev.knotless.pull or dev.knotless.issue record.

View raw schema
{
  "description": "A pull or an issue in a list of them.",
  "properties": {
    "author": {
      "description": "Who opened it.",
      "ref": "#actorView",
      "type": "ref"
    },
    "comments": {
      "description": "How many comments are on it, its own body aside.",
      "minimum": 0,
      "type": "integer"
    },
    "createdAt": {
      "format": "datetime",
      "type": "string"
    },
    "draft": {
      "description": "A pull its author has not marked ready to merge. Not, when absent.",
      "type": "boolean"
    },
    "kind": {
      "knownValues": [
        "pull",
        "issue"
      ],
      "type": "string"
    },
    "labels": {
      "description": "The labels it carries, as the repository defines them, in the order it does. Absent when it carries none.",
      "items": {
        "ref": "dev.knotless.repo#label",
        "type": "ref"
      },
      "type": "array"
    },
    "reviewers": {
      "description": "Those a pull's author asks to review it, in the order asked. Absent when it asks no one.",
      "items": {
        "ref": "#actorView",
        "type": "ref"
      },
      "type": "array"
    },
    "state": {
      "description": "A merged pull is merged; a closed one, or an issue, closed.",
      "knownValues": [
        "open",
        "closed",
        "merged"
      ],
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "updatedAt": {
      "description": "When its author last changed its title or body, if they have.",
      "format": "datetime",
      "type": "string"
    },
    "uri": {
      "description": "Its dev.knotless.pull or dev.knotless.issue record.",
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "kind",
    "title",
    "state",
    "author",
    "createdAt",
    "comments"
  ],
  "type": "object"
}
itemViewBasic object

A pull or an issue, by its record and its title.

Properties

title string Required

No description available.

uri string at-uri Required

Its dev.knotless.pull or dev.knotless.issue record.

View raw schema
{
  "description": "A pull or an issue, by its record and its title.",
  "properties": {
    "title": {
      "type": "string"
    },
    "uri": {
      "description": "Its dev.knotless.pull or dev.knotless.issue record.",
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "title"
  ],
  "type": "object"
}
languageView object

One language a repository is written in.

Properties

bytes integer Required

No description available.

minimum: 0
color string Required

Its color, as linguist has it.

name string Required

Its name, or `Other` for the languages each under one percent.

permille integer Required

Its share of all the bytes counted, in tenths of a percent.

minimum: 0maximum: 1000
View raw schema
{
  "description": "One language a repository is written in.",
  "properties": {
    "bytes": {
      "minimum": 0,
      "type": "integer"
    },
    "color": {
      "description": "Its color, as linguist has it.",
      "type": "string"
    },
    "name": {
      "description": "Its name, or `Other` for the languages each under one percent.",
      "type": "string"
    },
    "permille": {
      "description": "Its share of all the bytes counted, in tenths of a percent.",
      "maximum": 1000,
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "name",
    "color",
    "bytes",
    "permille"
  ],
  "type": "object"
}
lineTextView object

One line of a file.

Properties

number integer Required

Counting from 1.

minimum: 1
text string Required

No description available.

View raw schema
{
  "description": "One line of a file.",
  "properties": {
    "number": {
      "description": "Counting from 1.",
      "minimum": 1,
      "type": "integer"
    },
    "text": {
      "type": "string"
    }
  },
  "required": [
    "number",
    "text"
  ],
  "type": "object"
}
lineView object

The lines of a pull's diff a comment is on.

Properties

line integer Required

The last line.

minimum: 1
lines array of ref#lineTextView Optional

The lines as they were at the comment's commit, and for one alone a few before it; absent when that commit can no longer be read.

outdated boolean Required

Whether that side of the file has changed since the comment's commit, so its lines may no longer be where they were.

path string Required

The file's path on that side.

side string Optional

`old` for the side the pull leaves; absent, `new`.

Known values: old, new
startLine integer Optional

The first, for more than one.

minimum: 1
View raw schema
{
  "description": "The lines of a pull's diff a comment is on.",
  "properties": {
    "line": {
      "description": "The last line.",
      "minimum": 1,
      "type": "integer"
    },
    "lines": {
      "description": "The lines as they were at the comment's commit, and for one alone a few before it; absent when that commit can no longer be read.",
      "items": {
        "ref": "#lineTextView",
        "type": "ref"
      },
      "type": "array"
    },
    "outdated": {
      "description": "Whether that side of the file has changed since the comment's commit, so its lines may no longer be where they were.",
      "type": "boolean"
    },
    "path": {
      "description": "The file's path on that side.",
      "type": "string"
    },
    "side": {
      "description": "`old` for the side the pull leaves; absent, `new`.",
      "knownValues": [
        "old",
        "new"
      ],
      "type": "string"
    },
    "startLine": {
      "description": "The first, for more than one.",
      "minimum": 1,
      "type": "integer"
    }
  },
  "required": [
    "path",
    "line",
    "outdated"
  ],
  "type": "object"
}
link object

A link shown on an account's profile or a repository's pages.

Properties

title string Optional

What to call it. Readers fall back to the address's host.

maxLength: 320 bytesmaxGraphemes: 40 graphemes
url string uri Required

Where it goes: an http or https address.

View raw schema
{
  "description": "A link shown on an account's profile or a repository's pages.",
  "properties": {
    "title": {
      "description": "What to call it. Readers fall back to the address's host.",
      "maxGraphemes": 40,
      "maxLength": 320,
      "type": "string"
    },
    "url": {
      "description": "Where it goes: an http or https address.",
      "format": "uri",
      "type": "string"
    }
  },
  "required": [
    "url"
  ],
  "type": "object"
}
mention object

An account the span, `@handle` in the text, mentions: kept by DID, so it names the account still after its handle changes. The account hears of it as a notification.

Properties

did string did Required

A decentralized identifier (DID).

View raw schema
{
  "description": "An account the span, `@handle` in the text, mentions: kept by DID, so it names the account still after its handle changes. The account hears of it as a notification.",
  "properties": {
    "did": {
      "format": "did",
      "type": "string"
    }
  },
  "required": [
    "did"
  ],
  "type": "object"
}
minutesView object

The minutes a runner the repository names counts for its owner's public repositories, from its dev.knotless.minutes record.

Properties

allowance integer Optional

The minutes in 30 days it gives the owner's runs before they go one at a time. Absent when there is no limit.

minimum: 1
minutes integer Required

The minutes steps took in the 30 days up to `updatedAt`.

minimum: 0
runner ref #actorView Required

The runner's account.

updatedAt string datetime Required

When the runner last counted.

View raw schema
{
  "description": "The minutes a runner the repository names counts for its owner's public repositories, from its dev.knotless.minutes record.",
  "properties": {
    "allowance": {
      "description": "The minutes in 30 days it gives the owner's runs before they go one at a time. Absent when there is no limit.",
      "minimum": 1,
      "type": "integer"
    },
    "freeing": {
      "description": "When minutes counted now stop counting, soonest first.",
      "items": {
        "ref": "dev.knotless.minutes#freeing",
        "type": "ref"
      },
      "type": "array"
    },
    "minutes": {
      "description": "The minutes steps took in the 30 days up to `updatedAt`.",
      "minimum": 0,
      "type": "integer"
    },
    "runner": {
      "description": "The runner's account.",
      "ref": "#actorView",
      "type": "ref"
    },
    "updatedAt": {
      "description": "When the runner last counted.",
      "format": "datetime",
      "type": "string"
    }
  },
  "required": [
    "runner",
    "minutes",
    "updatedAt"
  ],
  "type": "object"
}
packageView object

One package a repository publishes.

Properties

image boolean Optional

True when its latest version, or its newest when none is latest, is a container image.

latest string Optional

Its latest version: the highest with no pre-release part. Absent when it has only pre-releases.

name string Required

The package's name.

releaseCount integer Optional

How many versions of it are published.

minimum: 0
View raw schema
{
  "description": "One package a repository publishes.",
  "properties": {
    "image": {
      "description": "True when its latest version, or its newest when none is latest, is a container image.",
      "type": "boolean"
    },
    "latest": {
      "description": "Its latest version: the highest with no pre-release part. Absent when it has only pre-releases.",
      "type": "string"
    },
    "name": {
      "description": "The package's name.",
      "type": "string"
    },
    "releaseCount": {
      "description": "How many versions of it are published.",
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "name"
  ],
  "type": "object"
}
pullHeadView object

What a pull brings in: a branch of a repository.

Properties

branch string Required

No description available.

repo ref #repoViewBasic Optional

The repository the branch is on, if the index knows it.

View raw schema
{
  "description": "What a pull brings in: a branch of a repository.",
  "properties": {
    "branch": {
      "type": "string"
    },
    "repo": {
      "description": "The repository the branch is on, if the index knows it.",
      "ref": "#repoViewBasic",
      "type": "ref"
    }
  },
  "required": [
    "branch"
  ],
  "type": "object"
}
queueStateView object

Where an open pull stands in its target branch's merge queue.

Properties

checks array of ref#checkView Required

While its batch is being checked or landing, the batch's checks; once ejected by checks that failed, those.

createdAt string datetime Required

When it was queued or ejected.

reason string Optional

Why it was ejected, as the runner said.

said string Required

Where it stands, in words: `Queued, 3rd of 5`, `In a batch of 4 being checked`, `Landing`, or why it was ejected.

state string Required

No description available.

Known values: queued, ejected
View raw schema
{
  "description": "Where an open pull stands in its target branch's merge queue.",
  "properties": {
    "checks": {
      "description": "While its batch is being checked or landing, the batch's checks; once ejected by checks that failed, those.",
      "items": {
        "ref": "#checkView",
        "type": "ref"
      },
      "type": "array"
    },
    "createdAt": {
      "description": "When it was queued or ejected.",
      "format": "datetime",
      "type": "string"
    },
    "reason": {
      "description": "Why it was ejected, as the runner said.",
      "type": "string"
    },
    "said": {
      "description": "Where it stands, in words: `Queued, 3rd of 5`, `In a batch of 4 being checked`, `Landing`, or why it was ejected.",
      "type": "string"
    },
    "state": {
      "knownValues": [
        "queued",
        "ejected"
      ],
      "type": "string"
    }
  },
  "required": [
    "state",
    "createdAt",
    "said",
    "checks"
  ],
  "type": "object"
}
reactionContent string

What a reaction says, as GitHub's eight: a thumbs up, a thumbs down, a laugh, a party popper, a confused face, a heart, a rocket and eyes.

ConstraintsmaxLength: 32 bytes
Known Values (other values may be valid)
+1 -1 laugh hooray confused heart rocket eyes
View raw schema
{
  "description": "What a reaction says, as GitHub's eight: a thumbs up, a thumbs down, a laugh, a party popper, a confused face, a heart, a rocket and eyes.",
  "knownValues": [
    "+1",
    "-1",
    "laugh",
    "hooray",
    "confused",
    "heart",
    "rocket",
    "eyes"
  ],
  "maxLength": 32,
  "type": "string"
}
reactionCountView object

How many accounts reacted to something with one content.

Properties

count integer Required

How many accounts reacted so, each once.

minimum: 0
reaction string at-uri Optional

The asker's dev.knotless.reaction record of this content on it, if they reacted so.

View raw schema
{
  "description": "How many accounts reacted to something with one content.",
  "properties": {
    "content": {
      "ref": "#reactionContent",
      "type": "ref"
    },
    "count": {
      "description": "How many accounts reacted so, each once.",
      "minimum": 0,
      "type": "integer"
    },
    "reaction": {
      "description": "The asker's dev.knotless.reaction record of this content on it, if they reacted so.",
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "content",
    "count"
  ],
  "type": "object"
}
reactionState object

The reactions to a pull, an issue or a comment.

Properties

reactions array of ref#reactionCountView Required

By content, in the order dev.knotless.defs#reactionContent lists them; a content no account reacted with is left out.

subject string at-uri Required

The pull, issue or comment.

View raw schema
{
  "description": "The reactions to a pull, an issue or a comment.",
  "properties": {
    "reactions": {
      "description": "By content, in the order dev.knotless.defs#reactionContent lists them; a content no account reacted with is left out.",
      "items": {
        "ref": "#reactionCountView",
        "type": "ref"
      },
      "type": "array"
    },
    "subject": {
      "description": "The pull, issue or comment.",
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "subject",
    "reactions"
  ],
  "type": "object"
}
releaseFileView object

One file of a release.

Properties

name string Required

Its name, as it is downloaded.

sha256 string Required

The lowercase hex SHA-256 of the file, which a reader checks it against.

size integer Required

Bytes in the file.

minimum: 1
View raw schema
{
  "description": "One file of a release.",
  "properties": {
    "name": {
      "description": "Its name, as it is downloaded.",
      "type": "string"
    },
    "sha256": {
      "description": "The lowercase hex SHA-256 of the file, which a reader checks it against.",
      "type": "string"
    },
    "size": {
      "description": "Bytes in the file.",
      "minimum": 1,
      "type": "integer"
    }
  },
  "required": [
    "name",
    "size",
    "sha256"
  ],
  "type": "object"
}
releaseView object

One version of a package a repository publishes, from its dev.knotless.release record, with its files and notes.

Properties

check string at-uri Optional

The dev.knotless.check of the run that built it, if its record names one.

commit string Optional

The hex object ID of the commit its files were built from, if its record names one.

createdAt string datetime Required

As its record says.

files array of ref#releaseFileView Required

What it publishes, in its record's order.

html string Optional

`notes` made into HTML, as dev.knotless.getThread's comments are: raw HTML shown as text, and links made relative to the repository.

image boolean Optional

True when its files are a container image's OCI layout: an `index.json` beside blobs named `sha256-<hex>`, pulled by `docker pull` rather than downloaded.

latest boolean Optional

True for its package's latest version: the highest with no pre-release part.

notes string Optional

What changed since the version before, in Markdown, as its record says.

package string Required

The package's name.

uri string at-uri Required

Its dev.knotless.release record.

version string Required

Its Semantic Versioning 2.0 version.

View raw schema
{
  "description": "One version of a package a repository publishes, from its dev.knotless.release record, with its files and notes.",
  "properties": {
    "check": {
      "description": "The dev.knotless.check of the run that built it, if its record names one.",
      "format": "at-uri",
      "type": "string"
    },
    "commit": {
      "description": "The hex object ID of the commit its files were built from, if its record names one.",
      "type": "string"
    },
    "createdAt": {
      "description": "As its record says.",
      "format": "datetime",
      "type": "string"
    },
    "files": {
      "description": "What it publishes, in its record's order.",
      "items": {
        "ref": "#releaseFileView",
        "type": "ref"
      },
      "type": "array"
    },
    "html": {
      "description": "`notes` made into HTML, as dev.knotless.getThread's comments are: raw HTML shown as text, and links made relative to the repository.",
      "type": "string"
    },
    "image": {
      "description": "True when its files are a container image's OCI layout: an `index.json` beside blobs named `sha256-<hex>`, pulled by `docker pull` rather than downloaded.",
      "type": "boolean"
    },
    "latest": {
      "description": "True for its package's latest version: the highest with no pre-release part.",
      "type": "boolean"
    },
    "notes": {
      "description": "What changed since the version before, in Markdown, as its record says.",
      "type": "string"
    },
    "package": {
      "description": "The package's name.",
      "type": "string"
    },
    "uri": {
      "description": "Its dev.knotless.release record.",
      "format": "at-uri",
      "type": "string"
    },
    "version": {
      "description": "Its Semantic Versioning 2.0 version.",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "package",
    "version",
    "files",
    "createdAt"
  ],
  "type": "object"
}
releaseViewBasic object

One version of a package a repository publishes, from its dev.knotless.release record: which, and when.

Properties

createdAt string datetime Required

As its record says.

image boolean Optional

True when its files are a container image's OCI layout, pulled by `docker pull` rather than downloaded.

latest boolean Optional

True for its package's latest version: the highest with no pre-release part.

package string Required

The package's name.

uri string at-uri Required

Its dev.knotless.release record.

version string Required

Its Semantic Versioning 2.0 version.

View raw schema
{
  "description": "One version of a package a repository publishes, from its dev.knotless.release record: which, and when.",
  "properties": {
    "createdAt": {
      "description": "As its record says.",
      "format": "datetime",
      "type": "string"
    },
    "image": {
      "description": "True when its files are a container image's OCI layout, pulled by `docker pull` rather than downloaded.",
      "type": "boolean"
    },
    "latest": {
      "description": "True for its package's latest version: the highest with no pre-release part.",
      "type": "boolean"
    },
    "package": {
      "description": "The package's name.",
      "type": "string"
    },
    "uri": {
      "description": "Its dev.knotless.release record.",
      "format": "at-uri",
      "type": "string"
    },
    "version": {
      "description": "Its Semantic Versioning 2.0 version.",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "package",
    "version",
    "createdAt"
  ],
  "type": "object"
}
releasesView object

What a repository publishes, in brief, for its pages to show under its name.

Properties

count integer Required

How many releases it has published, of all its packages.

minimum: 0
packages array of ref#packageView Required

Each package it publishes, by name.

release ref #releaseViewBasic Required

The release to show for it: the latest of the package named as the repository, else the newest that is its package's latest, or the newest of all when each is a pre-release.

View raw schema
{
  "description": "What a repository publishes, in brief, for its pages to show under its name.",
  "properties": {
    "count": {
      "description": "How many releases it has published, of all its packages.",
      "minimum": 0,
      "type": "integer"
    },
    "packages": {
      "description": "Each package it publishes, by name.",
      "items": {
        "ref": "#packageView",
        "type": "ref"
      },
      "type": "array"
    },
    "release": {
      "description": "The release to show for it: the latest of the package named as the repository, else the newest that is its package's latest, or the newest of all when each is a pre-release.",
      "ref": "#releaseViewBasic",
      "type": "ref"
    }
  },
  "required": [
    "count",
    "release",
    "packages"
  ],
  "type": "object"
}
repoMade object

A repository the pages made: created, forked, renamed or taken up.

Properties

name string Required

Its name, the record key.

maxLength: 100 bytes
uri string at-uri Required

Its dev.knotless.repo record, by its owner's DID.

View raw schema
{
  "description": "A repository the pages made: created, forked, renamed or taken up.",
  "properties": {
    "name": {
      "description": "Its name, the record key.",
      "maxLength": 100,
      "type": "string"
    },
    "uri": {
      "description": "Its dev.knotless.repo record, by its owner's DID.",
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "name"
  ],
  "type": "object"
}
repoRef object

A repository, as another record names it. The URI's name is the one the repository had when the record was written; a rename changes it, and a later repository can take it. The owner in the URI and `key` stay the repository's own, and are what a reader matches on.

Properties

key string tid Required

The repository's `key`.

uri string at-uri Required

The dev.knotless.repo record, as it was named when this was written.

View raw schema
{
  "description": "A repository, as another record names it. The URI's name is the one the repository had when the record was written; a rename changes it, and a later repository can take it. The owner in the URI and `key` stay the repository's own, and are what a reader matches on.",
  "properties": {
    "key": {
      "description": "The repository's `key`.",
      "format": "tid",
      "type": "string"
    },
    "uri": {
      "description": "The dev.knotless.repo record, as it was named when this was written.",
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "key"
  ],
  "type": "object"
}
repoView object

A repository among others, from its dev.knotless.repo record.

Properties

createdAt string datetime Required

As its record says.

description string Optional

No description available.

forkCount integer Optional

How many forks of it there are, as the appview has indexed. Given only where a list shows it, as an account's stars do.

minimum: 0
forkOf ref #repoViewBasic Optional

The repository it was forked from, if the appview knows it.

language ref #languageView Optional

The language most of its default branch is written in, as its file listing counts them. Absent when none is counted, or the appview could not read it.

name string Required

The repository's name: its record key.

owner ref #actorView Required

No description available.

private boolean Optional

Whether it is private, in a space: listed only to its owner, asking.

starCount integer Optional

How many accounts starred it, as the appview has indexed. Given only where a list shows it, as an account's stars do.

minimum: 0
uri string at-uri Required

Its dev.knotless.repo record, under the name it has now.

View raw schema
{
  "description": "A repository among others, from its dev.knotless.repo record.",
  "properties": {
    "createdAt": {
      "description": "As its record says.",
      "format": "datetime",
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "forkCount": {
      "description": "How many forks of it there are, as the appview has indexed. Given only where a list shows it, as an account's stars do.",
      "minimum": 0,
      "type": "integer"
    },
    "forkOf": {
      "description": "The repository it was forked from, if the appview knows it.",
      "ref": "#repoViewBasic",
      "type": "ref"
    },
    "language": {
      "description": "The language most of its default branch is written in, as its file listing counts them. Absent when none is counted, or the appview could not read it.",
      "ref": "#languageView",
      "type": "ref"
    },
    "name": {
      "description": "The repository's name: its record key.",
      "type": "string"
    },
    "owner": {
      "ref": "#actorView",
      "type": "ref"
    },
    "private": {
      "description": "Whether it is private, in a space: listed only to its owner, asking.",
      "type": "boolean"
    },
    "starCount": {
      "description": "How many accounts starred it, as the appview has indexed. Given only where a list shows it, as an account's stars do.",
      "minimum": 0,
      "type": "integer"
    },
    "uri": {
      "description": "Its dev.knotless.repo record, under the name it has now.",
      "format": "at-uri",
      "type": "string"
    }
  },
  "required": [
    "uri",
    "owner",
    "name",
    "createdAt"
  ],
  "type": "object"
}
repoViewBasic object

A repository, under the name it has now.

Properties

did string did Required

The repository's owner.

handle string Required

The owner's handle, as in #actorView.

name string Required

The repository's name: its record key.

View raw schema
{
  "description": "A repository, under the name it has now.",
  "properties": {
    "did": {
      "description": "The repository's owner.",
      "format": "did",
      "type": "string"
    },
    "handle": {
      "description": "The owner's handle, as in #actorView.",
      "type": "string"
    },
    "name": {
      "description": "The repository's name: its record key.",
      "type": "string"
    }
  },
  "required": [
    "did",
    "handle",
    "name"
  ],
  "type": "object"
}
repoViewDetailed object

A repository, with what its pages show above themselves.

Properties

card string Required

The path, on this appview, of the picture a link to its pages unfurls into: a new one whenever the picture changes.

defaultBranch string Required

The branch its HEAD names: empty, for a repository never pushed.

description string Optional

No description available.

forkOf ref #repoViewBasic Optional

The repository it was forked from, if the appview knows it.

name string Required

The repository's name: its record key.

openIssues integer Required

No description available.

minimum: 0
openPulls integer Required

No description available.

minimum: 0
owner ref #actorView Required

No description available.

private boolean Optional

Whether it is private, in a space: shown only to its members, each logged in to this appview.

releases ref #releasesView Optional

What it publishes, in brief, as the appview has indexed. Absent when it has published nothing, for a private repository, which cannot publish, and from an appview that keeps no index.

starCount integer Optional

How many accounts starred it, as the appview has indexed. Absent for a private repository, which cannot be starred, and from an appview that keeps no index.

minimum: 0
uri string at-uri Required

Its dev.knotless.repo record, under the name it has now.

viewer ref #repoViewerState Optional

What the account asking has to do with it; absent when no one asks.

View raw schema
{
  "description": "A repository, with what its pages show above themselves.",
  "properties": {
    "card": {
      "description": "The path, on this appview, of the picture a link to its pages unfurls into: a new one whenever the picture changes.",
      "type": "string"
    },
    "defaultBranch": {
      "description": "The branch its HEAD names: empty, for a repository never pushed.",
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "forkOf": {
      "description": "The repository it was forked from, if the appview knows it.",
      "ref": "#repoViewBasic",
      "type": "ref"
    },
    "links": {
      "description": "Links its pages show, in display order, as its record names them: its website first. Only http and https addresses.",
      "items": {
        "ref": "#link",
        "type": "ref"
      },
      "type": "array"
    },
    "name": {
      "description": "The repository's name: its record key.",
      "type": "string"
    },
    "openIssues": {
      "minimum": 0,
      "type": "integer"
    },
    "openPulls": {
      "minimum": 0,
      "type": "integer"
    },
    "owner": {
      "ref": "#actorView",
      "type": "ref"
    },
    "private": {
      "description": "Whether it is private, in a space: shown only to its members, each logged in to this appview.",
      "type": "boolean"
    },
    "releases": {
      "description": "What it publishes, in brief, as the appview has indexed. Absent when it has published nothing, for a private repository, which cannot publish, and from an appview that keeps no index.",
      "ref": "#releasesView",
      "type": "ref"
    },
    "starCount": {
      "description": "How many accounts starred it, as the appview has indexed. Absent for a private repository, which cannot be starred, and from an appview that keeps no index.",
      "minimum": 0,
      "type": "integer"
    },
    "uri": {
      "description": "Its dev.knotless.repo record, under the name it has now.",
      "format": "at-uri",
      "type": "string"
    },
    "viewer": {
      "description": "What the account asking has to do with it; absent when no one asks.",
      "ref": "#repoViewerState",
      "type": "ref"
    }
  },
  "required": [
    "uri",
    "owner",
    "name",
    "defaultBranch",
    "openPulls",
    "openIssues",
    "card"
  ],
  "type": "object"
}
repoViewerState object

What the account asking a query has to do with a repository.

Properties

star string at-uri Optional

Its dev.knotless.star record naming the repository, if it starred it.

transfer ref #repoViewBasic Optional

Where the owner has offered to move the repository, when it is offered to the account asking, which can take it up (dev.knotless.acceptTransfer).

View raw schema
{
  "description": "What the account asking a query has to do with a repository.",
  "properties": {
    "star": {
      "description": "Its dev.knotless.star record naming the repository, if it starred it.",
      "format": "at-uri",
      "type": "string"
    },
    "transfer": {
      "description": "Where the owner has offered to move the repository, when it is offered to the account asking, which can take it up (dev.knotless.acceptTransfer).",
      "ref": "#repoViewBasic",
      "type": "ref"
    }
  },
  "type": "object"
}
reviewView object

Where one reviewer stands on a pull: their latest comment with a verdict. A comment without one leaves it as it was, and a pull's author reviews nothing of their own.

Properties

commit string Optional

The hex object ID of the head it looked at.

maintainer boolean Required

Whether the reviewer is the repository's owner or a collaborator.

outdated boolean Required

Whether the open pull has moved past the head it looked at: an approval then stands for what the pull was, not what it is.

reviewer ref #actorView Required

No description available.

uri string at-uri Required

The dev.knotless.comment that reviewed it.

verdict string Required

`approve`, or `changes` for one that asked for changes.

Known values: approve, changes
View raw schema
{
  "description": "Where one reviewer stands on a pull: their latest comment with a verdict. A comment without one leaves it as it was, and a pull's author reviews nothing of their own.",
  "properties": {
    "commit": {
      "description": "The hex object ID of the head it looked at.",
      "type": "string"
    },
    "maintainer": {
      "description": "Whether the reviewer is the repository's owner or a collaborator.",
      "type": "boolean"
    },
    "outdated": {
      "description": "Whether the open pull has moved past the head it looked at: an approval then stands for what the pull was, not what it is.",
      "type": "boolean"
    },
    "reviewer": {
      "ref": "#actorView",
      "type": "ref"
    },
    "uri": {
      "description": "The dev.knotless.comment that reviewed it.",
      "format": "at-uri",
      "type": "string"
    },
    "verdict": {
      "description": "`approve`, or `changes` for one that asked for changes.",
      "knownValues": [
        "approve",
        "changes"
      ],
      "type": "string"
    }
  },
  "required": [
    "reviewer",
    "verdict",
    "uri",
    "outdated",
    "maintainer"
  ],
  "type": "object"
}
starState object

A repository's stars, as starring or unstarring it leaves them.

Properties

star string at-uri Optional

The asker's dev.knotless.star record naming it; absent once unstarred.

starCount integer Required

How many accounts starred it now.

minimum: 0
View raw schema
{
  "description": "A repository's stars, as starring or unstarring it leaves them.",
  "properties": {
    "star": {
      "description": "The asker's dev.knotless.star record naming it; absent once unstarred.",
      "format": "at-uri",
      "type": "string"
    },
    "starCount": {
      "description": "How many accounts starred it now.",
      "minimum": 0,
      "type": "integer"
    }
  },
  "required": [
    "starCount"
  ],
  "type": "object"
}

Lexicon Garden

@