Skip to content

[Core] Consolidate all node configurations into a new configs package #396

@Olshansk

Description

@Olshansk

Objective

Simplify the codebase and consolidate configurations.

Origin Document

A few different mechanisms for configuration management were discussed in #234 and a compromise was reached. However, there are slight challenges to how new developers approach the codebase (e.g. understanding where the configs are), verification and validation.

Goals

  • Design & Identify patterns of how we should manage configs in the codebase
  • Create a single package encapsulating all the logic related to configs
  • Remove the onus of independent modules to design their own configs
  • Enforce any module substitutes to conform to the configs in the shared package
  • Improve readability & understandability of all the configs across the codebase

Deliverable

  • A PR that consolidates all the configs into a single package under the root director
  • Refactoring & organize all existing configs into the package created above
  • An updated README explaining how configs are managed & maintained in the codebase

Non-goals / Non-deliverables

  • Introducing new validation logic for existing configs
  • Updating any existing configs

General issue deliverables

  • Update the appropriate CHANGELOG(s)
  • Update any relevant local/global README(s)
  • Update relevant source code tree explanations
  • Add or update any relevant or supporting mermaid diagrams

Testing Methodology

  • All tests: make test_all
  • LocalNet: verify a LocalNet is still functioning correctly by following the instructions at docs/development/README.md

Creator: @Olshansk
Co-Owners: @deblasis

Metadata

Metadata

Assignees

Labels

coreCore infrastructure - protocol related

Type

No type

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions