Initial standalone memabra release
This commit is contained in:
75
docs/schemas/memory_record.schema.json
Normal file
75
docs/schemas/memory_record.schema.json
Normal file
@@ -0,0 +1,75 @@
|
||||
{
|
||||
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||
"$id": "https://memabra.local/schemas/memory_record.schema.json",
|
||||
"title": "MemoryRecord",
|
||||
"description": "Long-term memory record stored by memabra with explicit layer typing and verification metadata.",
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"id",
|
||||
"memory_type",
|
||||
"fact_status",
|
||||
"content",
|
||||
"summary",
|
||||
"source",
|
||||
"confidence",
|
||||
"created_at",
|
||||
"updated_at",
|
||||
"verification"
|
||||
],
|
||||
"properties": {
|
||||
"id": {"type": "string", "minLength": 1},
|
||||
"memory_type": {
|
||||
"type": "string",
|
||||
"enum": ["semantic", "procedural", "episodic", "working"]
|
||||
},
|
||||
"fact_status": {
|
||||
"type": "string",
|
||||
"enum": ["draft", "assumed", "verified", "deprecated", "revoked"]
|
||||
},
|
||||
"content": {"type": "string", "minLength": 1},
|
||||
"summary": {"type": "string", "minLength": 1},
|
||||
"source": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["kind", "ref"],
|
||||
"properties": {
|
||||
"kind": {"type": "string", "enum": ["user", "session", "tool", "import", "system"]},
|
||||
"ref": {"type": "string", "minLength": 1}
|
||||
}
|
||||
},
|
||||
"confidence": {"type": "number", "minimum": 0, "maximum": 1},
|
||||
"tags": {
|
||||
"type": "array",
|
||||
"items": {"type": "string"},
|
||||
"default": []
|
||||
},
|
||||
"related_entities": {
|
||||
"type": "array",
|
||||
"items": {"type": "string"},
|
||||
"default": []
|
||||
},
|
||||
"created_at": {"type": "string", "format": "date-time"},
|
||||
"updated_at": {"type": "string", "format": "date-time"},
|
||||
"last_used_at": {"type": ["string", "null"], "format": "date-time"},
|
||||
"expires_at": {"type": ["string", "null"], "format": "date-time"},
|
||||
"verification": {
|
||||
"type": "object",
|
||||
"additionalProperties": false,
|
||||
"required": ["status", "last_checked_at", "check_method"],
|
||||
"properties": {
|
||||
"status": {"type": "string", "enum": ["unknown", "pending", "confirmed", "disputed", "failed"]},
|
||||
"last_checked_at": {"type": ["string", "null"], "format": "date-time"},
|
||||
"check_method": {"type": ["string", "null"]}
|
||||
}
|
||||
},
|
||||
"revocation": {
|
||||
"type": ["object", "null"],
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"reason": {"type": "string"},
|
||||
"revoked_at": {"type": "string", "format": "date-time"}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user