# Generator Declaration Defaults
# Default values for workspace declarations

{
  # Default metadata template
  metadata_template = {
    name = "unnamed-workspace",
    version = "1.0.0",
    description = "Provisioning workspace",
    created_at = "2025-01-01T00:00:00Z",
  },

  # Default deployment config
  solo_deployment = {
    mode = 'solo,
    servers = [],
    ha_enabled = false,
  },

  multiuser_deployment = {
    mode = 'multiuser,
    servers = [],
    ha_enabled = false,
  },

  # Default changelog
  empty_changelog = {
    entries = [],
  },

  # Common taskserv profiles
  minimal_profile = {
    profile = 'minimal,
    required = true,
    confidence = 1.0,
  },

  default_profile = {
    profile = 'default,
    required = true,
    confidence = 1.0,
  },

  ha_profile = {
    profile = 'HA,
    required = true,
    confidence = 1.0,
  },

  # Default metadata
  metadata = {
    name = "default-workspace",
    version = "1.0.0",
    description = "Default workspace",
    created_at = "2025-01-01T00:00:00Z",
  },

  # Default technology detection
  technology_detection = {
    name = "unknown",
    confidence = 0.0,
  },

  # Default taskserv requirement
  taskserv_requirement = {
    name = "default",
    profile = 'default,
    required = true,
    confidence = 0.5,
  },

  # Default server config
  server_config = {
    name = "default-server",
    provider = "upcloud",
    taskservs = [],
  },

  # Default deployment config
  deployment_config = {
    mode = 'multiuser,
    servers = [],
    ha_enabled = false,
  },

  # Default workspace declaration
  workspace_declaration = {
    metadata = {
      name = "default-workspace",
      version = "1.0.0",
    },
    detections = [],
    requirements = [],
    deployment = {
      mode = 'multiuser,
      servers = [],
      ha_enabled = false,
    },
  },

  # Default changelog entry
  changelog_entry = {
    version = "1.0.0",
    timestamp = "2025-01-01T00:00:00Z",
    changes = [],
  },

  # Default changelog
  changelog = {
    entries = [],
  },

  # Default workspace
  workspace = {
    declaration = {
      metadata = {
        name = "default-workspace",
        version = "1.0.0",
      },
      detections = [],
      requirements = [],
      deployment = {
        mode = 'multiuser,
        servers = [],
        ha_enabled = false,
      },
    },
    changelog = {
      entries = [],
    },
  },
}
