K10 (backup items): node-backup says when each item starts and ends

The seat gains item-started and item-ended on <event>.<node>.<module>.<item>, kept last per subject for 7 days,
each with at, and item-ended with outcome (done, failed or put-off), the restore's act it gave way to and an
error, so the recovery module and the backup holder each read the other's start and never overlap. The seat is
of the seat-list grain: nothing is generated and its fixtures are not read, so mesh-sdk's definition reader and
its bootstrapped copy of this file are what read it.

Builds: design 47 G §554, §555, §563, §523

Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ
This commit is contained in:
2026-11-11 15:54:17 +01:00
parent 5e8dce621b
commit 24d58f0786
+64
View File
@@ -68,6 +68,70 @@
"class": "act"
}
],
"events": [
{
"name": "item-started",
"subject": "item-started.<node>.<module>.<item>",
"keep": {
"max-age-days": 7,
"last-per-subject": true
},
"body": {
"type": "object",
"description": "the holder started backing up one item of a module on its node, said before it reads the recovery module's restore-started and restored (design 47 G 554, 563)",
"required": [
"at"
],
"properties": {
"at": {
"type": "string",
"format": "date-time",
"description": "when the item started, RFC 3339"
}
}
}
},
{
"name": "item-ended",
"subject": "item-ended.<node>.<module>.<item>",
"keep": {
"max-age-days": 7,
"last-per-subject": true
},
"body": {
"type": "object",
"description": "the holder ended one item: done, failed (error stopped for an item it said started and never ended, at its start) or put-off while a restore of the recovery module runs, the item started again when that restore's restored is heard (design 47 G 554, 563)",
"required": [
"at",
"outcome"
],
"properties": {
"at": {
"type": "string",
"format": "date-time",
"description": "when the item ended, RFC 3339"
},
"outcome": {
"type": "string",
"enum": [
"done",
"failed",
"put-off"
],
"description": "how the item ended; a put-off item is that night's backup once it runs, neither failed nor missed"
},
"restore": {
"type": "string",
"description": "with put-off, the act of the recovery module's restore the item gave way to"
},
"error": {
"type": "string",
"description": "with failed, why, in words; stopped for an item ended at the holder's start"
}
}
}
}
],
"receives": [
{
"kind": "backup",