Payload schema
configobject
A configuration patch: deep-merged per mount point; null clears.
mountsRecord<string, object | null>optional
Per-mount-point overlay patches: an unknown key adds an overlay, a partial value edits just those fields, null clears the overlay (back to the derived default). Omitted keys are untouched.
Raw JSON schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"config": {
"type": "object",
"properties": {
"mounts": {
"description": "Per-mount-point overlay patches: an unknown key adds an overlay, a partial value edits just those fields, null clears the overlay (back to the derived default). Omitted keys are untouched.",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {
"anyOf": [
{
"type": "object",
"properties": {
"policy": {
"description": "Governs the COMMIT door, not the overlay filesystem: the local layer is private everywhere, but only commit-to-main mounts accept git.commit (the same lane as that repo's commitFiles — no branches, live on main). read-only marks reference material (e.g. a big imported repo) whose changes must not land anywhere yet.",
"type": "string",
"enum": [
"commit-to-main",
"read-only"
]
},
"repoPath": {
"description": "The backing repo for this mount, when given.",
"type": "string"
}
},
"additionalProperties": false,
"description": "Partial mount fields, merged over the derived mount at this path (or forming a new mount when complete)."
},
{
"type": "null"
}
]
}
}
},
"additionalProperties": false,
"description": "A configuration patch: deep-merged per mount point; null clears."
}
},
"required": [
"config"
],
"additionalProperties": false
}