Статус: Draft Дата: 2026-04-29
1. Ownership
resource-catalog-service владеет только catalog/resource state. Operation history хранится в control-plane-service, а raw execution state - в execution-plane-service.
2. Conceptual entities
3. Tables
resource_types
Назначение: справочник типов ресурсов.
Ключевые поля:
id;key, напримерkubernetes.cluster;display_name;category;allowed_actions;default_capability_keys;schema_version;created_at,updated_at.
resources
Назначение: канонический ресурс.
Ключевые поля:
id;organization_id;resource_type_id;name;slug;environment;lifecycle_status;health_status;metadata;version;created_at,updated_at.
Правила:
versionобязателен для optimistic concurrency;lifecycle_statusне заменяет operation status;- resource может ссылаться на active/last operation только как projection.
resource_relationships
Назначение: граф связей между ресурсами.
Типы связей:
runs_on;contains;depends_on;provides_to;located_in;managed_by;
Ключевые поля:
source_resource_id;target_resource_id;relationship_type;metadata;
resource_desired_state
Назначение: желаемое состояние ресурса.
Ключевые поля:
resource_id;state;schema_version;updated_by_operation_id;updated_at.
resource_observed_state
Назначение: наблюдаемое состояние ресурса.
Ключевые поля:
resource_id;state;source;observed_at;confidence;raw_ref.
capability_definitions
Назначение: онтология capabilities.
Ключевые поля:
key;category;description;constraint_schema;attribute_schema;version;
provided_capabilities
Назначение: concrete resource предоставляет capability.
Ключевые поля:
resource_id;capability_key;scope;attributes;status;verified_by_evidence_ref;created_by_operation_id;
topology
Logical groups:
regions;datacenters;layers;segments;topology_node_bindings.
4. Read models
Read models пересобираемые:
resource_graph_view;topology_graph_view;capability_graph_view;resource_health_summary_view;resource_operation_summary_view.
resource_operation_summary_view обновляется из событий control-plane-service, но не является владельцем operations.
5. Status enums
Resource lifecycle:
1 2 3 4 5 6 7 8 | |
Health:
1 2 3 4 5 | |
Provided capability status:
1 2 3 4 5 | |