dev.knotless.check

Kept in the runner's account, keyed `<owner hash>.<repo key>.<ref hash>.<commit>.<workflow>`, where each hash is the first 26 characters of the lowercase unpadded base32 SHA-256 of the owner's DID or the full ref name (for a pull's run, the pull's AT-URI), so each commit keeps its own check of each workflow, replaced only when that commit runs again. A pull's run is keyed `<owner hash>.<repo key>.<pull hash>.<commit>.<baseCommit>.<workflow>`, so a run against a newer base is a check of its own. A merge queue's batch's run is keyed the same way, with the hash of `queue <branch>` (the branch's full ref name) in place of the pull's, its last commit and the branch's tip it was built on. A runner may delete checks of no more use: a batch's, a closed pull's, ones superseded by a newer run of the same workflow, and the default branch's after a while. Readers trust only a runner the repository names.

Details · record, key any
Kindrecord
Record keyany
Authorityknotless.dev
Indexed

Record

record · key any

Properties

For a pull's run, the hex object ID of the tip of the branch the pull is into that its head was merged with: the run is of that merge, as merging the pull would make it, so it is current only while both the head and the base are where they were. For a batch's run, the tip of the branch the batch was built on.

  • minLength: 40
  • maxLength: 64

batch

array

For a run of a merge queue's batch (dev.knotless.queue): the pulls it would land, in order, each squashed as a commit of its own onto `baseCommit`, the tip of the branch `ref` names, and `commit` the last of them. Once every run of the batch passes, the branch moves to `commit`.

  • maxLength: 64
itemsref
Reference

commit

requiredstring

The hex object ID the ref pointed at.

  • minLength: 40
  • maxLength: 64

error

string

Why the workflow did not run: for `error`, or for a `failure` of a pull that does not merge, the paths that conflict.

  • maxLength: 4096

finishedAt

string · datetime

generation

integer

The ref's generation at that commit.

  • minimum: 1

log

blob

Every step's output, interleaved as it was written; the tail, when there was more.

  • maxSize: 1000000
  • accept: text/plain

outputs

array

What the run made to be looked at, such as screenshots of the pages a change moved, in the order of their names. Kinds unknown to a reader are passed over.

  • maxLength: 32
itemsunion
One of

pull

string · at-uri

The dev.knotless.pull record, for a run of the pull's head.

queue

string

For a pull's run, where its workflow runs in the merge queue, when not only on each batch: `first`, as the workflow's `queue: first` asks, is a pre-flight, which a queued pull must pass at its head before it goes into a batch.

  • maxLength: 64
  • knownValues: first

ref

requiredstring

The full ref name the run was for, such as refs/heads/main; for a pull's run, its head branch in the repository the pull brings it from.

  • maxLength: 1024

repo

requiredref

The repository whose ref moved, or the target of the pull.

skipped

string

For a `success` that ran no step: why, as people read it, such as the paths its workflow names, none of which the change touched. Its steps are then each `skipped`.

  • maxLength: 4000
  • maxGraphemes: 1000

startedAt

requiredstring · datetime

status

requiredstring

`queued` is a run filed and waiting for a job on its runner, no step started yet: it is filed `running` once it starts, its `startedAt` then. `failure` is a step that exited non-zero or ran out of time, or a pull's head that conflicts with its base; `error` is the runner failing to run the workflow at all; `cancelled` is a run stopped before it finished: for a newer commit's run of the workflow on the same ref or pull, as its pull moved to another head or base or closed, as the merge queue dropped its batch, or as the runner stopped. A `success` with `skipped` ran no step, as the change touched none of the paths the workflow names, and passes as any `success` does.

  • maxLength: 64
  • knownValues: queued | running | success | failure | error | cancelled

steps

array

Each step the workflow has, in order. Absent for `error`.

  • maxLength: 256
itemsref
Reference

workflow

requiredstring

The workflow's name, which is also the last part of the record key.

  • maxLength: 64

#batched

object

A pull in a merge queue's batch, as the run squashed it.

Properties

commit

requiredstring

The hex object ID of the pull's own commit in the batch.

  • minLength: 40
  • maxLength: 64

head

string

The hex object ID of the pull's head that was squashed.

  • minLength: 40
  • maxLength: 64

pull

requiredstring · at-uri

The dev.knotless.pull record.

#image

object

A picture a run made, as an output.

Properties

alt

requiredstring

What the picture shows, from its file's name, for whoever reads it without seeing it: a person or an agent.

  • maxLength: 3000
  • maxGraphemes: 300

image

requiredblob
  • maxSize: 1000000
  • accept: image/png, image/jpeg, image/webp, image/gif

#step

object

Properties

durationMs

integer

How long the step ran, in milliseconds.

  • minimum: 0

exitCode

integer

Absent when the step was killed, for running out of time or as its run was cancelled.

name

requiredstring

The step's name in the workflow, or `step <n>` for one with none.

  • maxLength: 256

status

requiredstring

`cancelled` is the step running when its run was cancelled.

  • maxLength: 64
  • knownValues: success | failure | skipped | cancelled

Similar lexicons

semantic match

Lexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.

  • A pull put in the merge queue of the branch it targets, taken out of it, or turned away by the runner that lands the queue.

  • A check of one of a repository's workflows.

  • A repository's merge queues.

  • What a repository's runners ran: every run of its workflows, and the workflows themselves.

  • A pull or issue opened, closed or merged, or a pull pointed at another target branch; or a thread on a pull's lines resolved or opened again.