Skip to main content
PUT
Record a repository's instruction-file answer

Query Parameters

repository
string
required

Absolute path of the repository being answered for.

Maximum string length: 4096

Body

application/json

The answer a person gave for a repository.

decision
enum<string>
required

unknown is deliberately absent: it is the absence of an answer, not one somebody can give. So is "continue untrusted", the third exit, and for the opposite reason: it is a choice about THIS session that is deliberately not written down, so the next session asks again. A client that takes it simply does not call this operation.

Available options:
trusted,
refused
scope
enum<string>
default:directory

Which directory the answer is stored for. directory is the one named in repository. parent stores it for that directory's IMMEDIATE parent — the second exit, which covers every sibling worktree cut under it later — and ALSO for repository itself whenever the parent's answer would not reach it, which is when that directory carries a contrary answer of its own: nearest wins, so the parent's row alone would have left a refusal standing under a prompt whose own key line says the repository's material loads. A directory with no contrary answer gets no row of its own, so one answer still covers a whole tree. The server computes the parent rather than trusting a caller to name an ancestor, so a client cannot widen an answer past the one it offered, and it refuses parent with 400 wherever the GET reported none. The filesystem root is refused SEPARATELY and for every scope, the omitted one included, so naming / as the repository itself is a 400 too — a client that builds the path by joining and lets a component escape lands there without any dialogue. One / row answers trusted for every directory on the machine, permanently, with nothing that shows or revokes it; writing one by hand into the store stays the only route to it.

Available options:
directory,
parent

Response

Recorded.