docs: add node1 runbooks, consolidation artifacts, and maintenance scripts
This commit is contained in:
268
docs/contracts/clan-provenance.schema.json
Normal file
268
docs/contracts/clan-provenance.schema.json
Normal file
@@ -0,0 +1,268 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "https://jos.local/schemas/clan-provenance.schema.json",
|
||||
"title": "CLAN Provenance Schema",
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": {
|
||||
"$ref": "#/$defs/trail"
|
||||
},
|
||||
"$defs": {
|
||||
"nonEmptyString": {
|
||||
"type": "string",
|
||||
"minLength": 1
|
||||
},
|
||||
"unixTimeInt": {
|
||||
"type": "integer",
|
||||
"minimum": 0
|
||||
},
|
||||
"sha256Ref": {
|
||||
"type": "string",
|
||||
"pattern": "^(sha256:)?[A-Fa-f0-9]{12,64}$"
|
||||
},
|
||||
"visibilityLevel": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"public",
|
||||
"interclan",
|
||||
"incircle",
|
||||
"soulsafe",
|
||||
"sacred"
|
||||
]
|
||||
},
|
||||
"consentStatus": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"none",
|
||||
"pending",
|
||||
"confirmed"
|
||||
]
|
||||
},
|
||||
"actorType": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"human",
|
||||
"agent",
|
||||
"system",
|
||||
"external"
|
||||
]
|
||||
},
|
||||
"opType": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"created",
|
||||
"summarized",
|
||||
"redacted",
|
||||
"classified",
|
||||
"validated",
|
||||
"composed",
|
||||
"merged",
|
||||
"stamped",
|
||||
"export_validated",
|
||||
"policy_checked",
|
||||
"synced",
|
||||
"imported",
|
||||
"corrected"
|
||||
]
|
||||
},
|
||||
"versions": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"constitution_version": {
|
||||
"$ref": "#/$defs/nonEmptyString"
|
||||
},
|
||||
"agent_prompt_version": {
|
||||
"type": "string"
|
||||
},
|
||||
"router_guard_version": {
|
||||
"type": "string"
|
||||
},
|
||||
"protocol_version": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"constitution_version"
|
||||
]
|
||||
},
|
||||
"actor": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"type": {
|
||||
"$ref": "#/$defs/actorType"
|
||||
},
|
||||
"id": {
|
||||
"$ref": "#/$defs/nonEmptyString"
|
||||
},
|
||||
"display": {
|
||||
"type": "string",
|
||||
"maxLength": 120
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"type",
|
||||
"id"
|
||||
]
|
||||
},
|
||||
"source": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"channel": {
|
||||
"type": "string",
|
||||
"enum": [
|
||||
"ui",
|
||||
"api",
|
||||
"telegram",
|
||||
"matrix",
|
||||
"dao",
|
||||
"chain",
|
||||
"import",
|
||||
"internal",
|
||||
"webhook",
|
||||
"bridge"
|
||||
]
|
||||
},
|
||||
"request_id": {
|
||||
"$ref": "#/$defs/nonEmptyString"
|
||||
},
|
||||
"session_id": {
|
||||
"type": "string",
|
||||
"maxLength": 128
|
||||
},
|
||||
"message_id": {
|
||||
"type": "string",
|
||||
"maxLength": 128
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"channel",
|
||||
"request_id"
|
||||
]
|
||||
},
|
||||
"context": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"circle_id": {
|
||||
"type": "string",
|
||||
"maxLength": 128
|
||||
},
|
||||
"circle_name": {
|
||||
"type": "string",
|
||||
"maxLength": 128
|
||||
},
|
||||
"gate_level": {
|
||||
"type": "string",
|
||||
"maxLength": 64
|
||||
},
|
||||
"visibility_level": {
|
||||
"$ref": "#/$defs/visibilityLevel"
|
||||
},
|
||||
"consent_status": {
|
||||
"$ref": "#/$defs/consentStatus"
|
||||
},
|
||||
"consent_event_ref": {
|
||||
"type": "string",
|
||||
"maxLength": 256
|
||||
}
|
||||
}
|
||||
},
|
||||
"operation": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"op": {
|
||||
"$ref": "#/$defs/opType"
|
||||
},
|
||||
"input_hash": {
|
||||
"$ref": "#/$defs/sha256Ref"
|
||||
},
|
||||
"output_hash": {
|
||||
"$ref": "#/$defs/sha256Ref"
|
||||
},
|
||||
"notes": {
|
||||
"type": "string",
|
||||
"maxLength": 200
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"op"
|
||||
]
|
||||
},
|
||||
"links": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"parent_artifact_ids": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/nonEmptyString"
|
||||
},
|
||||
"maxItems": 64
|
||||
},
|
||||
"related_artifact_ids": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/nonEmptyString"
|
||||
},
|
||||
"maxItems": 64
|
||||
},
|
||||
"external_refs": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/nonEmptyString"
|
||||
},
|
||||
"maxItems": 64
|
||||
}
|
||||
}
|
||||
},
|
||||
"trail": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"event_id": {
|
||||
"allOf": [
|
||||
{
|
||||
"$ref": "#/$defs/nonEmptyString"
|
||||
},
|
||||
{
|
||||
"maxLength": 128
|
||||
}
|
||||
]
|
||||
},
|
||||
"ts": {
|
||||
"$ref": "#/$defs/unixTimeInt"
|
||||
},
|
||||
"actor": {
|
||||
"$ref": "#/$defs/actor"
|
||||
},
|
||||
"source": {
|
||||
"$ref": "#/$defs/source"
|
||||
},
|
||||
"context": {
|
||||
"$ref": "#/$defs/context"
|
||||
},
|
||||
"operation": {
|
||||
"$ref": "#/$defs/operation"
|
||||
},
|
||||
"versions": {
|
||||
"$ref": "#/$defs/versions"
|
||||
},
|
||||
"links": {
|
||||
"$ref": "#/$defs/links"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"event_id",
|
||||
"ts",
|
||||
"actor",
|
||||
"source",
|
||||
"operation",
|
||||
"versions"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user