Skip to content

007-init-wizard - #28

Merged
dgtalbug merged 6 commits into
mainfrom
develop
Dec 26, 2025
Merged

007-init-wizard#28
dgtalbug merged 6 commits into
mainfrom
develop

Conversation

@dgtalbug

Copy link
Copy Markdown
Contributor

This pull request makes several improvements to the codebase, focusing on configuration path normalization, documentation enhancements, and codebase cleanup. The most significant changes include normalizing configuration and data directory handling to better support XDG standards, improving developer documentation, and consolidating benchmark and test code. Additionally, some import statements were reordered for consistency, and deprecated or redundant code was removed.

Configuration and Directory Handling:

  • Refactored configuration and data directory logic to fully leverage the xdg package, ensuring that paths like Store.Path are normalized and that XDG-compliant defaults are used throughout. This includes updating comments and removing redundant code that manually appended directory names. (internal/config/loader.go, internal/config/defaults.go, internal/app/factory.go) [1] [2] [3]
  • Removed the deprecated NewDefaultContext function and its corresponding test, consolidating on NewDefaultContextWithConfig for context creation. (internal/app/context_test.go, internal/app/factory.go) [1] [2]

Documentation Improvements:

  • Updated the README.md to provide clearer instructions for building from source, added a new section detailing the interactive arc init environment setup command, and improved overall usage documentation. (README.md) [1] [2] [3]

Benchmark and Test Code Consolidation:

  • Moved all CLI banner and help animation benchmarks from separate files into the main test files, removing pkg/cli/banner_benchmark_test.go and pkg/cli/help_animation_test.go, and placing the benchmarks in pkg/cli/banner_test.go. (pkg/cli/banner_benchmark_test.go, pkg/cli/help_animation_test.go, pkg/cli/banner_test.go) [1] [2] [3]
  • Added missing imports and ensured that all necessary dependencies are included for the relocated benchmarks and tests. (pkg/cli/banner_test.go, pkg/cli/help_test.go) [1] [2]

Codebase Cleanup and Consistency:

  • Reordered import statements for consistency and to comply with linter expectations across several files. (pkg/cli/banner.go, pkg/cli/completion.go, pkg/cli/help.go, internal/testing/helpers.go, internal/app/context_test.go) [1] [2] [3] [4] [5] [6]
  • Commented out the gci import order linter configuration in .golangci.yml to avoid conflicts or unnecessary linter failures. (.golangci.yml)

dgtalbug and others added 3 commits December 25, 2025 20:31
Signed-off-by: dgtalbug <dgtalbug@gmail.com>
* feat: add initial documentation for Arc Init Wizard including requirements, data model, quickstart guide, and research findings

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

* refactor: simplify directory handling and improve dependency injection in context

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

* feat: implement interactive initialization wizard with stack tier selection and installation path input

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

* refactor: reorganize import statements for consistency and clarity

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

* refactor: reorder import statements for consistency across multiple files

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

* refactor: disable gci configuration in golangci.yml for future adjustments

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

* feat: enhance interactive initialization wizard with detailed state management and improved UI elements

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

* feat: add installation and testing guide for the arc init command

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

* feat: update Makefile for test output and enhance README with build instructions

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

* feat: enhance code quality review and fix critical issues in Makefile and README

Signed-off-by: dgtalbug <dgtalbug@gmail.com>

---------

Signed-off-by: dgtalbug <dgtalbug@gmail.com>
Signed-off-by: dgtalbug <dgtalbug@gmail.com>
@github-actions github-actions Bot added the documentation Improvements or additions to documentation label Dec 26, 2025

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Go Benchmark

Details
Benchmark suite Current: 5d274bc Previous: 76da7f3 Ratio
BenchmarkRenderBanner 240094 ns/op 37909 B/op 630 allocs/op 239599 ns/op 37909 B/op 630 allocs/op 1.00
BenchmarkRenderBanner - ns/op 240094 ns/op 239599 ns/op 1.00
BenchmarkRenderBanner - B/op 37909 B/op 37909 B/op 1
BenchmarkRenderBanner - allocs/op 630 allocs/op 630 allocs/op 1
BenchmarkRenderBannerAnimated 124969 ns/op 47429 B/op 630 allocs/op 124167 ns/op 47895 B/op 630 allocs/op 1.01
BenchmarkRenderBannerAnimated - ns/op 124969 ns/op 124167 ns/op 1.01
BenchmarkRenderBannerAnimated - B/op 47429 B/op 47895 B/op 0.99
BenchmarkRenderBannerAnimated - allocs/op 630 allocs/op 630 allocs/op 1
BenchmarkRenderBannerAnimated_NoAnimation 131802 ns/op 56665 B/op 630 allocs/op 118940 ns/op 42433 B/op 630 allocs/op 1.11
BenchmarkRenderBannerAnimated_NoAnimation - ns/op 131802 ns/op 118940 ns/op 1.11
BenchmarkRenderBannerAnimated_NoAnimation - B/op 56665 B/op 42433 B/op 1.34
BenchmarkRenderBannerAnimated_NoAnimation - allocs/op 630 allocs/op 630 allocs/op 1
BenchmarkRenderGradientBanner/cyan-purple 110627 ns/op 35820 B/op 589 allocs/op 105665 ns/op 35852 B/op 589 allocs/op 1.05
BenchmarkRenderGradientBanner/cyan-purple - ns/op 110627 ns/op 105665 ns/op 1.05
BenchmarkRenderGradientBanner/cyan-purple - B/op 35820 B/op 35852 B/op 1.00
BenchmarkRenderGradientBanner/cyan-purple - allocs/op 589 allocs/op 589 allocs/op 1
BenchmarkRenderGradientBanner/rainbow 110511 ns/op 35704 B/op 586 allocs/op 105015 ns/op 35745 B/op 586 allocs/op 1.05
BenchmarkRenderGradientBanner/rainbow - ns/op 110511 ns/op 105015 ns/op 1.05
BenchmarkRenderGradientBanner/rainbow - B/op 35704 B/op 35745 B/op 1.00
BenchmarkRenderGradientBanner/rainbow - allocs/op 586 allocs/op 586 allocs/op 1
BenchmarkRenderGradientBanner/fire 111320 ns/op 35750 B/op 589 allocs/op 105392 ns/op 35755 B/op 589 allocs/op 1.06
BenchmarkRenderGradientBanner/fire - ns/op 111320 ns/op 105392 ns/op 1.06
BenchmarkRenderGradientBanner/fire - B/op 35750 B/op 35755 B/op 1.00
BenchmarkRenderGradientBanner/fire - allocs/op 589 allocs/op 589 allocs/op 1
BenchmarkRenderGradientBanner/ocean 129443 ns/op 35782 B/op 590 allocs/op 107463 ns/op 35762 B/op 590 allocs/op 1.20
BenchmarkRenderGradientBanner/ocean - ns/op 129443 ns/op 107463 ns/op 1.20
BenchmarkRenderGradientBanner/ocean - B/op 35782 B/op 35762 B/op 1.00
BenchmarkRenderGradientBanner/ocean - allocs/op 590 allocs/op 590 allocs/op 1
BenchmarkRenderGradientBanner/matrix 110133 ns/op 35675 B/op 586 allocs/op 106962 ns/op 35631 B/op 586 allocs/op 1.03
BenchmarkRenderGradientBanner/matrix - ns/op 110133 ns/op 106962 ns/op 1.03
BenchmarkRenderGradientBanner/matrix - B/op 35675 B/op 35631 B/op 1.00
BenchmarkRenderGradientBanner/matrix - allocs/op 586 allocs/op 586 allocs/op 1
BenchmarkRenderCharacterRainbow 742495 ns/op 59048 B/op 3569 allocs/op 723396 ns/op 59048 B/op 3569 allocs/op 1.03
BenchmarkRenderCharacterRainbow - ns/op 742495 ns/op 723396 ns/op 1.03
BenchmarkRenderCharacterRainbow - B/op 59048 B/op 59048 B/op 1
BenchmarkRenderCharacterRainbow - allocs/op 3569 allocs/op 3569 allocs/op 1
BenchmarkColorizeHelp 17465 ns/op 2256 B/op 71 allocs/op 17193 ns/op 2256 B/op 71 allocs/op 1.02
BenchmarkColorizeHelp - ns/op 17465 ns/op 17193 ns/op 1.02
BenchmarkColorizeHelp - B/op 2256 B/op 2256 B/op 1
BenchmarkColorizeHelp - allocs/op 71 allocs/op 71 allocs/op 1
BenchmarkColorizeHelpWithAnimation 221479074 ns/op 1385 B/op 50 allocs/op 221532236 ns/op 1385 B/op 50 allocs/op 1.00
BenchmarkColorizeHelpWithAnimation - ns/op 221479074 ns/op 221532236 ns/op 1.00
BenchmarkColorizeHelpWithAnimation - B/op 1385 B/op 1385 B/op 1
BenchmarkColorizeHelpWithAnimation - allocs/op 50 allocs/op 50 allocs/op 1
BenchmarkHexToColor 23.9 ns/op 0 B/op 0 allocs/op 23.96 ns/op 0 B/op 0 allocs/op 1.00
BenchmarkHexToColor - ns/op 23.9 ns/op 23.96 ns/op 1.00
BenchmarkHexToColor - B/op 0 B/op 0 B/op 1
BenchmarkHexToColor - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkColorToHex 161.5 ns/op 8 B/op 1 allocs/op 163.9 ns/op 8 B/op 1 allocs/op 0.99
BenchmarkColorToHex - ns/op 161.5 ns/op 163.9 ns/op 0.99
BenchmarkColorToHex - B/op 8 B/op 8 B/op 1
BenchmarkColorToHex - allocs/op 1 allocs/op 1 allocs/op 1
BenchmarkInterpolate 4.813 ns/op 0 B/op 0 allocs/op 4.484 ns/op 0 B/op 0 allocs/op 1.07
BenchmarkInterpolate - ns/op 4.813 ns/op 4.484 ns/op 1.07
BenchmarkInterpolate - B/op 0 B/op 0 B/op 1
BenchmarkInterpolate - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkColorTransitionAt 4.769 ns/op 0 B/op 0 allocs/op 5.09 ns/op 0 B/op 0 allocs/op 0.94
BenchmarkColorTransitionAt - ns/op 4.769 ns/op 5.09 ns/op 0.94
BenchmarkColorTransitionAt - B/op 0 B/op 0 B/op 1
BenchmarkColorTransitionAt - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkLoadConfig 3716 ns/op 216 B/op 5 allocs/op 3728 ns/op 216 B/op 5 allocs/op 1.00
BenchmarkLoadConfig - ns/op 3716 ns/op 3728 ns/op 1.00
BenchmarkLoadConfig - B/op 216 B/op 216 B/op 1
BenchmarkLoadConfig - allocs/op 5 allocs/op 5 allocs/op 1
BenchmarkShouldAnimate 763.3 ns/op 0 B/op 0 allocs/op 759.6 ns/op 0 B/op 0 allocs/op 1.00
BenchmarkShouldAnimate - ns/op 763.3 ns/op 759.6 ns/op 1.00
BenchmarkShouldAnimate - B/op 0 B/op 0 B/op 1
BenchmarkShouldAnimate - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkFrameRateAdapter_RecordFrame 104 ns/op 16 B/op 0 allocs/op 106.7 ns/op 16 B/op 0 allocs/op 0.97
BenchmarkFrameRateAdapter_RecordFrame - ns/op 104 ns/op 106.7 ns/op 0.97
BenchmarkFrameRateAdapter_RecordFrame - B/op 16 B/op 16 B/op 1
BenchmarkFrameRateAdapter_RecordFrame - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkFrameRateAdapter_GetCurrentFPS 5.452 ns/op 0 B/op 0 allocs/op 5.428 ns/op 0 B/op 0 allocs/op 1.00
BenchmarkFrameRateAdapter_GetCurrentFPS - ns/op 5.452 ns/op 5.428 ns/op 1.00
BenchmarkFrameRateAdapter_GetCurrentFPS - B/op 0 B/op 0 B/op 1
BenchmarkFrameRateAdapter_GetCurrentFPS - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkFrameRateAdapter_GetStats 35.2 ns/op 0 B/op 0 allocs/op 35.39 ns/op 0 B/op 0 allocs/op 0.99
BenchmarkFrameRateAdapter_GetStats - ns/op 35.2 ns/op 35.39 ns/op 0.99
BenchmarkFrameRateAdapter_GetStats - B/op 0 B/op 0 B/op 1
BenchmarkFrameRateAdapter_GetStats - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkLerp 0.3148 ns/op 0 B/op 0 allocs/op 0.3123 ns/op 0 B/op 0 allocs/op 1.01
BenchmarkLerp - ns/op 0.3148 ns/op 0.3123 ns/op 1.01
BenchmarkLerp - B/op 0 B/op 0 B/op 1
BenchmarkLerp - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkEaseInOut 4.693 ns/op 0 B/op 0 allocs/op 4.757 ns/op 0 B/op 0 allocs/op 0.99
BenchmarkEaseInOut - ns/op 4.693 ns/op 4.757 ns/op 0.99
BenchmarkEaseInOut - B/op 0 B/op 0 B/op 1
BenchmarkEaseInOut - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkEaseOut 19.68 ns/op 0 B/op 0 allocs/op 19.5 ns/op 0 B/op 0 allocs/op 1.01
BenchmarkEaseOut - ns/op 19.68 ns/op 19.5 ns/op 1.01
BenchmarkEaseOut - B/op 0 B/op 0 B/op 1
BenchmarkEaseOut - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkColorTransition 14.4 ns/op 0 B/op 0 allocs/op 14.44 ns/op 0 B/op 0 allocs/op 1.00
BenchmarkColorTransition - ns/op 14.4 ns/op 14.44 ns/op 1.00
BenchmarkColorTransition - B/op 0 B/op 0 B/op 1
BenchmarkColorTransition - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkPerformanceMonitor_RecordFrame 15.21 ns/op 22 B/op 0 allocs/op 15.29 ns/op 22 B/op 0 allocs/op 0.99
BenchmarkPerformanceMonitor_RecordFrame - ns/op 15.21 ns/op 15.29 ns/op 0.99
BenchmarkPerformanceMonitor_RecordFrame - B/op 22 B/op 22 B/op 1
BenchmarkPerformanceMonitor_RecordFrame - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkPerformanceMonitor_GetStats 4604 ns/op 1792 B/op 2 allocs/op 4638 ns/op 1792 B/op 2 allocs/op 0.99
BenchmarkPerformanceMonitor_GetStats - ns/op 4604 ns/op 4638 ns/op 0.99
BenchmarkPerformanceMonitor_GetStats - B/op 1792 B/op 1792 B/op 1
BenchmarkPerformanceMonitor_GetStats - allocs/op 2 allocs/op 2 allocs/op 1
BenchmarkPerformanceMonitor_Disabled 2.518 ns/op 0 B/op 0 allocs/op 2.505 ns/op 0 B/op 0 allocs/op 1.01
BenchmarkPerformanceMonitor_Disabled - ns/op 2.518 ns/op 2.505 ns/op 1.01
BenchmarkPerformanceMonitor_Disabled - B/op 0 B/op 0 B/op 1
BenchmarkPerformanceMonitor_Disabled - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkWithProgress 206 ns/op 0 B/op 0 allocs/op 206.4 ns/op 0 B/op 0 allocs/op 1.00
BenchmarkWithProgress - ns/op 206 ns/op 206.4 ns/op 1.00
BenchmarkWithProgress - B/op 0 B/op 0 B/op 1
BenchmarkWithProgress - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkResizeHandler_GetSize 5.664 ns/op 0 B/op 0 allocs/op 5.677 ns/op 0 B/op 0 allocs/op 1.00
BenchmarkResizeHandler_GetSize - ns/op 5.664 ns/op 5.677 ns/op 1.00
BenchmarkResizeHandler_GetSize - B/op 0 B/op 0 B/op 1
BenchmarkResizeHandler_GetSize - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkResizeHandler_ShouldContinue 5.656 ns/op 0 B/op 0 allocs/op 5.717 ns/op 0 B/op 0 allocs/op 0.99
BenchmarkResizeHandler_ShouldContinue - ns/op 5.656 ns/op 5.717 ns/op 0.99
BenchmarkResizeHandler_ShouldContinue - B/op 0 B/op 0 B/op 1
BenchmarkResizeHandler_ShouldContinue - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkWithSpinner 17.19 ns/op 0 B/op 0 allocs/op 17.19 ns/op 0 B/op 0 allocs/op 1
BenchmarkWithSpinner - ns/op 17.19 ns/op 17.19 ns/op 1
BenchmarkWithSpinner - B/op 0 B/op 0 B/op 1
BenchmarkWithSpinner - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkAnimateThemeTransition 4.382 ns/op 0 B/op 0 allocs/op 4.402 ns/op 0 B/op 0 allocs/op 1.00
BenchmarkAnimateThemeTransition - ns/op 4.382 ns/op 4.402 ns/op 1.00
BenchmarkAnimateThemeTransition - B/op 0 B/op 0 B/op 1
BenchmarkAnimateThemeTransition - allocs/op 0 allocs/op 0 allocs/op 1
BenchmarkThemePreviewFrame 59.41 ns/op 0 B/op 0 allocs/op 59.77 ns/op 0 B/op 0 allocs/op 0.99
BenchmarkThemePreviewFrame - ns/op 59.41 ns/op 59.77 ns/op 0.99
BenchmarkThemePreviewFrame - B/op 0 B/op 0 B/op 1
BenchmarkThemePreviewFrame - allocs/op 0 allocs/op 0 allocs/op 1

This comment was automatically generated by workflow using github-action-benchmark.

…tions

Signed-off-by: dgtalbug <dgtalbug@gmail.com>
@github-actions github-actions Bot added the ci label Dec 26, 2025
@dgtalbug
dgtalbug merged commit baa16c2 into main Dec 26, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant