syntax = "proto3"; package charybdis.core; import "core/common.proto"; // SystemMetadata represents identifying information for a system entity // A system is a collection of services and resources that work together message SystemMetadata { // Required: The name of the system string name = 1; // Optional: Namespace for organizational grouping (default: "default") string namespace = 2; // Optional: Human-readable description of the system string description = 3; // Optional: Labels for categorization and filtering // Key-value pairs (e.g., "environment": "production", "criticality": "high") map labels = 4; // Optional: Tags for additional classification repeated string tags = 5; // Optional: Links to external resources repeated Link links = 6; } // SystemSpec represents configuration for a system entity message SystemSpec { // Required: Owner team or individual responsible for this system (references a Group or User entity) string owner = 1; // Optional: Domain this system belongs to (references a Domain entity) string domain = 2; }