refactor and split common package #599
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request reorganizes and refactors the codebase to improve modularity, clarity, and maintainability. The main changes include moving shared types and command workflow logic from the
internal/commonpackage to new, more focused packages (internal/app,internal/extract, andinternal/workflow), and updating all relevant documentation and code references to match the new structure.Codebase organization and refactoring:
internal/commonpackage intointernal/app(application context and shared types),internal/extract(data extraction helpers), andinternal/workflow(workflow orchestration for reporting commands). Updated all code and documentation to use the new package locations. [1] [2] [3]benchmarkandconfigcommands to use the new packages (app,extract,workflow) instead ofcommon. [1] [2] [3] [4]Documentation updates:
ARCHITECTURE.mdto reflect the new internal package structure, including diagrams, descriptions, and code references forReportingCommandand related workflows. [1] [2] [3]internal/extractin table processing and updated test file naming examples. [1] [2]CONTRIBUTING.mdto show correct usage of test commands and imports with the new package structure. [1] [2] [3]Command and flag handling:
benchmarkcommand to use types and helpers fromappandworkflowpackages instead ofcommon. [1] [2] [3] [4]Data extraction helpers:
commontoextract, and updated all usages in the codebase. [1] [2] [3] [4] [5]These changes improve the separation of concerns and make the codebase easier to navigate and maintain as it grows.