class_docstr: Class for connecting models and data operations with json files with
  its descriptions and metadata
docstr: Method parse ``JSON`` repository with operations descriptions and
  wrapped information into :obj:`OperationMetaInfo`, then put it into the list
  
  Returns:
      List[OperationMetaInfo]: list with :obj:`OperationMetaInfo` for every operation from ``json`` repository
docstr_tok: ["Method","parse","``","JSON","``","repository","with","operations","descriptions","and","wrapped","information","into",":","obj",":","`","OperationMetaInfo","`",",","then","put","it","into","the","list","Returns",":","List","[","OperationMetaInfo","]",":","list","with",":","obj",":","`","OperationMetaInfo","`","for","every","operation","from","``","json","``","repository"]
code: def _initialise_repo(cls, repo_path: str) -> List[OperationMetaInfo]:
      """Method parse ``JSON`` repository with operations descriptions and
      wrapped information into :obj:`OperationMetaInfo`, then put it into the list
  
      Returns:
          List[OperationMetaInfo]: list with :obj:`OperationMetaInfo` for every operation from ``json`` repository
      """
  
      repository_json = load_repository(repo_path)
  
      metadata_json = repository_json["metadata"]
      operations_json = repository_json["operations"]
  
      operations_list = []
      for current_operation_key in operations_json:
          # Get information about operation
          # properties - information about operation by key, for example tags
          # metadata - information about meta of the operation
          properties = operations_json.get(current_operation_key)
          metadata = metadata_json[properties["meta"]]
  
          task_types = import_enums_from_str(metadata["tasks"])
          input_type = import_enums_from_str(
              properties.get("input_type", metadata.get("input_type"))
          )
          output_type = import_enums_from_str(
              properties.get("output_type", metadata.get("output_type"))
          )
  
          # Get available strategies for obtained metadata
          supported_strategies = (
              OperationTypesRepository.get_strategies_by_metadata(
                  metadata
              )
          )
  
          accepted_node_types = read_field(
              metadata, "accepted_node_types", ["any"]
          )
          forbidden_node_types = read_field(
              metadata, "forbidden_node_types", []
          )
  
          # Get tags for meta and for operation
          meta_tags = read_field(metadata, "tags", [])
          operation_tags = read_field(properties, "tags", [])
          presets = read_field(properties, "presets", [])
  
          allowed_positions = ["primary", "secondary", "root"]
  
          if accepted_node_types and accepted_node_types != "all":
              allowed_positions = accepted_node_types
          if forbidden_node_types:
              allowed_positions = [
                  pos
                  for pos in allowed_positions
                  if pos not in forbidden_node_types
              ]
  
          # Unit tags
          tags = meta_tags + operation_tags
  
          operation = OperationMetaInfo(
              id=current_operation_key,
              input_types=input_type,
              output_types=output_type,
              task_type=task_types,
              supported_strategies=supported_strategies,
              allowed_positions=allowed_positions,
              tags=tags,
              presets=presets,
          )
          operations_list.append(operation)
  
      return operations_list
  
imports: import json
  import os
  from collections import defaultdict
  from dataclasses import dataclass
  from typing import Dict, List, Optional, TYPE_CHECKING, Union
  import numpy
  from golem.core.log import default_log
  from golem.utilities.data_structures import ensure_wrapped_in_sequence
  from fedot.core.constants import AUTO_PRESET_NAME, BEST_QUALITY_PRESET_NAME
  from fedot.core.repository.dataset_types import DataTypesEnum
  from fedot.core.repository.json_evaluation import import_enums_from_str, import_strategy_from_str, read_field
  from fedot.core.repository.tasks import Task, TaskTypesEnum
label_desc: Use image node_id 10 for calling the OperationTypesRepository obj's underlying member method code with example usage: obj._initialise_repo(cls, repo_path) and returns: operations_list