feat: 019 view design - #59
Merged
Merged
Conversation
- Added spec for focused redesign of CLI views, detailing desired experiences and layouts. - Created tasks for implementation, including the development of a SplitPane component for layout management. - Rewrote Services view to feature a split-pane layout with a detail card, enhancing user interaction. - Improved History view messaging for better user guidance when no workspace is detected or history is empty. - Removed Version command and associated files to declutter the CLI interface. - Rewrote Config view to utilize a custom bubbletea model for a visually appealing theme selection experience.
- Add golden files for various UI states including config and services views. - Create unit tests for ConfigOverview and ServicesList, ensuring proper keyboard handling and cursor movement. - Remove deprecated VersionView and related commands from the CLI. - Enhance WorkspaceHistory to provide user-friendly error messages for non-workspace scenarios. - Refactor ConfigOverview to support a visual theme picker with color swatches. - Implement split-pane layout for ServicesList, allowing for dynamic detail display without navigation. - Update success criteria and requirements in design specifications to reflect new features and improvements.
…le colors - cyan-purple → Catppuccin Macchiato palette (mauve/blue pastels, dark base) - ocean → Tokyo Night Storm (neon blue/purple, deep navy bg) - fire → Material You warm tones (Deep Orange A400, proper dark bg) - default → Material You M3 dark indigo baseline (full schema) - nord → accurate Nord palette labels and secondary distinction - All 10 themes: status symbols updated to emoji (✅ ❌⚠️ ℹ️) - Unique spinner personalities per theme (bars, quarters, arcs, shapes) - 11 profile primary/secondary colors refreshed with modern palette values - Regenerated golden files for pkg/ui/theme and pkg/ui/view
All hardcoded lipgloss.NormalBorder() / RoundedBorder() calls now delegate to ctx.BorderStyle(), which reads the active skin's borders.style setting (rounded/square/thick/double). - component/header.go, error.go, viewport.go, hero.go - component/navigation.go sidebar, controlbar.go top border - component/card.go: removed manual switch, use ctx.BorderStyle() - view/home.go: left panel, center panel, right panel borders Tab bar ThickBorder intentionally kept (design choice).
…ons, and GHCR detail card - Add ArcImage and Released fields to catalog.Service struct - Patch services.yaml: all 29 existing services get arc_image + released fields - Add 3 new services: daredevil (LiveKit), scarlett (voice-agent), friday-collector (SigNoz OTEL) - Fix friday-collector port conflicts (14317/14318) and alias conflicts (friday-otel) - Rewrite services_list.go with gh-dash always-visible search bar - New table columns: status icon (●/⚠) + Codename + Arc Image + Role - Rich detail card: GHCR image, Available/Coming Soon badge, description, ports, commands - Add SetValue method to component.Search - Update unit tests and regenerate golden files for new layout
|
📊 Binary Size No significant change
|
1 similar comment
|
📊 Binary Size No significant change
|
There was a problem hiding this comment.
Go Benchmark
Details
| Benchmark suite | Current: 73034de | Previous: 6d7d773 | Ratio |
|---|---|---|---|
BenchmarkEmbeddedCatalog_Load |
2613200 ns/op 1040610 B/op 17204 allocs/op |
4997637 ns/op 972616 B/op 15984 allocs/op |
0.52 |
BenchmarkEmbeddedCatalog_Load - ns/op |
2613200 ns/op |
4997637 ns/op |
0.52 |
BenchmarkEmbeddedCatalog_Load - B/op |
1040610 B/op |
972616 B/op |
1.07 |
BenchmarkEmbeddedCatalog_Load - allocs/op |
17204 allocs/op |
15984 allocs/op |
1.08 |
BenchmarkEmbeddedCatalog_LoadWithoutTemplateValidation |
2702691 ns/op 1040594 B/op 17204 allocs/op |
5372265 ns/op 972600 B/op 15984 allocs/op |
0.50 |
BenchmarkEmbeddedCatalog_LoadWithoutTemplateValidation - ns/op |
2702691 ns/op |
5372265 ns/op |
0.50 |
BenchmarkEmbeddedCatalog_LoadWithoutTemplateValidation - B/op |
1040594 B/op |
972600 B/op |
1.07 |
BenchmarkEmbeddedCatalog_LoadWithoutTemplateValidation - allocs/op |
17204 allocs/op |
15984 allocs/op |
1.08 |
BenchmarkEmbeddedCatalog_GetService |
39.3 ns/op 0 B/op 0 allocs/op |
54.67 ns/op 0 B/op 0 allocs/op |
0.72 |
BenchmarkEmbeddedCatalog_GetService - ns/op |
39.3 ns/op |
54.67 ns/op |
0.72 |
BenchmarkEmbeddedCatalog_GetService - B/op |
0 B/op |
0 B/op |
1 |
BenchmarkEmbeddedCatalog_GetService - allocs/op |
0 allocs/op |
0 allocs/op |
1 |
BenchmarkEmbeddedCatalog_GetServiceByAlias |
54.45 ns/op 0 B/op 0 allocs/op |
93.19 ns/op 0 B/op 0 allocs/op |
0.58 |
BenchmarkEmbeddedCatalog_GetServiceByAlias - ns/op |
54.45 ns/op |
93.19 ns/op |
0.58 |
BenchmarkEmbeddedCatalog_GetServiceByAlias - B/op |
0 B/op |
0 B/op |
1 |
BenchmarkEmbeddedCatalog_GetServiceByAlias - allocs/op |
0 allocs/op |
0 allocs/op |
1 |
BenchmarkEmbeddedCatalog_ListServices |
4378 ns/op 560 B/op 8 allocs/op |
7937 ns/op 560 B/op 8 allocs/op |
0.55 |
BenchmarkEmbeddedCatalog_ListServices - ns/op |
4378 ns/op |
7937 ns/op |
0.55 |
BenchmarkEmbeddedCatalog_ListServices - B/op |
560 B/op |
560 B/op |
1 |
BenchmarkEmbeddedCatalog_ListServices - allocs/op |
8 allocs/op |
8 allocs/op |
1 |
BenchmarkEmbeddedCatalog_ListServicesFiltered |
1429 ns/op 240 B/op 6 allocs/op |
2809 ns/op 208 B/op 6 allocs/op |
0.51 |
BenchmarkEmbeddedCatalog_ListServicesFiltered - ns/op |
1429 ns/op |
2809 ns/op |
0.51 |
BenchmarkEmbeddedCatalog_ListServicesFiltered - B/op |
240 B/op |
208 B/op |
1.15 |
BenchmarkEmbeddedCatalog_ListServicesFiltered - allocs/op |
6 allocs/op |
6 allocs/op |
1 |
BenchmarkEmbeddedCatalog_SuggestSimilar |
9417 ns/op 13403 B/op 150 allocs/op |
21428 ns/op 11775 B/op 136 allocs/op |
0.44 |
BenchmarkEmbeddedCatalog_SuggestSimilar - ns/op |
9417 ns/op |
21428 ns/op |
0.44 |
BenchmarkEmbeddedCatalog_SuggestSimilar - B/op |
13403 B/op |
11775 B/op |
1.14 |
BenchmarkEmbeddedCatalog_SuggestSimilar - allocs/op |
150 allocs/op |
136 allocs/op |
1.10 |
BenchmarkEmbeddedCatalog_RenderServiceTemplate |
6759 ns/op 4241 B/op 29 allocs/op |
18803 ns/op 4315 B/op 32 allocs/op |
0.36 |
BenchmarkEmbeddedCatalog_RenderServiceTemplate - ns/op |
6759 ns/op |
18803 ns/op |
0.36 |
BenchmarkEmbeddedCatalog_RenderServiceTemplate - B/op |
4241 B/op |
4315 B/op |
0.98 |
BenchmarkEmbeddedCatalog_RenderServiceTemplate - allocs/op |
29 allocs/op |
32 allocs/op |
0.91 |
BenchmarkEmbeddedCatalog_RenderDockerCompose |
52737 ns/op 33068 B/op 232 allocs/op |
146603 ns/op 33435 B/op 245 allocs/op |
0.36 |
BenchmarkEmbeddedCatalog_RenderDockerCompose - ns/op |
52737 ns/op |
146603 ns/op |
0.36 |
BenchmarkEmbeddedCatalog_RenderDockerCompose - B/op |
33068 B/op |
33435 B/op |
0.99 |
BenchmarkEmbeddedCatalog_RenderDockerCompose - allocs/op |
232 allocs/op |
245 allocs/op |
0.95 |
BenchmarkEmbeddedCatalog_MemoryUsage |
2614587 ns/op 1040604 B/op 17204 allocs/op |
5484523 ns/op 972593 B/op 15984 allocs/op |
0.48 |
BenchmarkEmbeddedCatalog_MemoryUsage - ns/op |
2614587 ns/op |
5484523 ns/op |
0.48 |
BenchmarkEmbeddedCatalog_MemoryUsage - B/op |
1040604 B/op |
972593 B/op |
1.07 |
BenchmarkEmbeddedCatalog_MemoryUsage - allocs/op |
17204 allocs/op |
15984 allocs/op |
1.08 |
BenchmarkTemplateRenderer_FirstRender |
85839 ns/op 34990 B/op 629 allocs/op |
243139 ns/op 35013 B/op 630 allocs/op |
0.35 |
BenchmarkTemplateRenderer_FirstRender - ns/op |
85839 ns/op |
243139 ns/op |
0.35 |
BenchmarkTemplateRenderer_FirstRender - B/op |
34990 B/op |
35013 B/op |
1.00 |
BenchmarkTemplateRenderer_FirstRender - allocs/op |
629 allocs/op |
630 allocs/op |
1.00 |
BenchmarkTemplateRenderer_CachedRender |
10471 ns/op 2432 B/op 38 allocs/op |
24774 ns/op 2456 B/op 39 allocs/op |
0.42 |
BenchmarkTemplateRenderer_CachedRender - ns/op |
10471 ns/op |
24774 ns/op |
0.42 |
BenchmarkTemplateRenderer_CachedRender - B/op |
2432 B/op |
2456 B/op |
0.99 |
BenchmarkTemplateRenderer_CachedRender - allocs/op |
38 allocs/op |
39 allocs/op |
0.97 |
BenchmarkEmbeddedCatalog_ConcurrentAccess |
28.5 ns/op 0 B/op 0 allocs/op |
42.59 ns/op 0 B/op 0 allocs/op |
0.67 |
BenchmarkEmbeddedCatalog_ConcurrentAccess - ns/op |
28.5 ns/op |
42.59 ns/op |
0.67 |
BenchmarkEmbeddedCatalog_ConcurrentAccess - B/op |
0 B/op |
0 B/op |
1 |
BenchmarkEmbeddedCatalog_ConcurrentAccess - allocs/op |
0 allocs/op |
0 allocs/op |
1 |
BenchmarkTemplateRenderer_RenderTemplate |
6800 ns/op 4241 B/op 29 allocs/op |
18082 ns/op 4315 B/op 32 allocs/op |
0.38 |
BenchmarkTemplateRenderer_RenderTemplate - ns/op |
6800 ns/op |
18082 ns/op |
0.38 |
BenchmarkTemplateRenderer_RenderTemplate - B/op |
4241 B/op |
4315 B/op |
0.98 |
BenchmarkTemplateRenderer_RenderTemplate - allocs/op |
29 allocs/op |
32 allocs/op |
0.91 |
BenchmarkTemplateRenderer_RenderTemplate_WithVars |
7311 ns/op 2777 B/op 34 allocs/op |
21531 ns/op 2923 B/op 40 allocs/op |
0.34 |
BenchmarkTemplateRenderer_RenderTemplate_WithVars - ns/op |
7311 ns/op |
21531 ns/op |
0.34 |
BenchmarkTemplateRenderer_RenderTemplate_WithVars - B/op |
2777 B/op |
2923 B/op |
0.95 |
BenchmarkTemplateRenderer_RenderTemplate_WithVars - allocs/op |
34 allocs/op |
40 allocs/op |
0.85 |
BenchmarkTemplateRenderer_RenderDockerCompose_Small |
18778 ns/op 14464 B/op 88 allocs/op |
46997 ns/op 14688 B/op 97 allocs/op |
0.40 |
BenchmarkTemplateRenderer_RenderDockerCompose_Small - ns/op |
18778 ns/op |
46997 ns/op |
0.40 |
BenchmarkTemplateRenderer_RenderDockerCompose_Small - B/op |
14464 B/op |
14688 B/op |
0.98 |
BenchmarkTemplateRenderer_RenderDockerCompose_Small - allocs/op |
88 allocs/op |
97 allocs/op |
0.91 |
BenchmarkTemplateRenderer_RenderDockerCompose_Medium |
50926 ns/op 33687 B/op 217 allocs/op |
140493 ns/op 34000 B/op 229 allocs/op |
0.36 |
BenchmarkTemplateRenderer_RenderDockerCompose_Medium - ns/op |
50926 ns/op |
140493 ns/op |
0.36 |
BenchmarkTemplateRenderer_RenderDockerCompose_Medium - B/op |
33687 B/op |
34000 B/op |
0.99 |
BenchmarkTemplateRenderer_RenderDockerCompose_Medium - allocs/op |
217 allocs/op |
229 allocs/op |
0.95 |
BenchmarkTemplateRenderer_RenderDockerCompose_Large |
108472 ns/op 56719 B/op 425 allocs/op |
279800 ns/op 57516 B/op 447 allocs/op |
0.39 |
BenchmarkTemplateRenderer_RenderDockerCompose_Large - ns/op |
108472 ns/op |
279800 ns/op |
0.39 |
BenchmarkTemplateRenderer_RenderDockerCompose_Large - B/op |
56719 B/op |
57516 B/op |
0.99 |
BenchmarkTemplateRenderer_RenderDockerCompose_Large - allocs/op |
425 allocs/op |
447 allocs/op |
0.95 |
BenchmarkTemplateRenderer_ValidateTemplate |
15600 ns/op 11136 B/op 128 allocs/op |
37270 ns/op 11136 B/op 128 allocs/op |
0.42 |
BenchmarkTemplateRenderer_ValidateTemplate - ns/op |
15600 ns/op |
37270 ns/op |
0.42 |
BenchmarkTemplateRenderer_ValidateTemplate - B/op |
11136 B/op |
11136 B/op |
1 |
BenchmarkTemplateRenderer_ValidateTemplate - allocs/op |
128 allocs/op |
128 allocs/op |
1 |
BenchmarkTemplateRenderer_CacheHit |
9909 ns/op 4240 B/op 29 allocs/op |
17348 ns/op 4312 B/op 32 allocs/op |
0.57 |
BenchmarkTemplateRenderer_CacheHit - ns/op |
9909 ns/op |
17348 ns/op |
0.57 |
BenchmarkTemplateRenderer_CacheHit - B/op |
4240 B/op |
4312 B/op |
0.98 |
BenchmarkTemplateRenderer_CacheHit - allocs/op |
29 allocs/op |
32 allocs/op |
0.91 |
BenchmarkTemplateVars_Operations/Set |
16.39 ns/op 0 B/op 0 allocs/op |
24.09 ns/op 0 B/op 0 allocs/op |
0.68 |
BenchmarkTemplateVars_Operations/Set - ns/op |
16.39 ns/op |
24.09 ns/op |
0.68 |
BenchmarkTemplateVars_Operations/Set - B/op |
0 B/op |
0 B/op |
1 |
BenchmarkTemplateVars_Operations/Set - allocs/op |
0 allocs/op |
0 allocs/op |
1 |
BenchmarkTemplateVars_Operations/Get |
15.88 ns/op 0 B/op 0 allocs/op |
17.88 ns/op 0 B/op 0 allocs/op |
0.89 |
BenchmarkTemplateVars_Operations/Get - ns/op |
15.88 ns/op |
17.88 ns/op |
0.89 |
BenchmarkTemplateVars_Operations/Get - B/op |
0 B/op |
0 B/op |
1 |
BenchmarkTemplateVars_Operations/Get - allocs/op |
0 allocs/op |
0 allocs/op |
1 |
BenchmarkTemplateVars_Operations/GetString |
17.99 ns/op 0 B/op 0 allocs/op |
18.06 ns/op 0 B/op 0 allocs/op |
1.00 |
BenchmarkTemplateVars_Operations/GetString - ns/op |
17.99 ns/op |
18.06 ns/op |
1.00 |
BenchmarkTemplateVars_Operations/GetString - B/op |
0 B/op |
0 B/op |
1 |
BenchmarkTemplateVars_Operations/GetString - allocs/op |
0 allocs/op |
0 allocs/op |
1 |
BenchmarkTemplateVars_Operations/Has |
10.39 ns/op 0 B/op 0 allocs/op |
19.82 ns/op 0 B/op 0 allocs/op |
0.52 |
BenchmarkTemplateVars_Operations/Has - ns/op |
10.39 ns/op |
19.82 ns/op |
0.52 |
BenchmarkTemplateVars_Operations/Has - B/op |
0 B/op |
0 B/op |
1 |
BenchmarkTemplateVars_Operations/Has - allocs/op |
0 allocs/op |
0 allocs/op |
1 |
BenchmarkTemplateVars_Operations/Clone |
1040 ns/op 1192 B/op 3 allocs/op |
2192 ns/op 1192 B/op 3 allocs/op |
0.47 |
BenchmarkTemplateVars_Operations/Clone - ns/op |
1040 ns/op |
2192 ns/op |
0.47 |
BenchmarkTemplateVars_Operations/Clone - B/op |
1192 B/op |
1192 B/op |
1 |
BenchmarkTemplateVars_Operations/Clone - allocs/op |
3 allocs/op |
3 allocs/op |
1 |
BenchmarkTemplateVars_Operations/Merge |
1915 ns/op 1800 B/op 5 allocs/op |
3327 ns/op 1800 B/op 5 allocs/op |
0.58 |
BenchmarkTemplateVars_Operations/Merge - ns/op |
1915 ns/op |
3327 ns/op |
0.58 |
BenchmarkTemplateVars_Operations/Merge - B/op |
1800 B/op |
1800 B/op |
1 |
BenchmarkTemplateVars_Operations/Merge - allocs/op |
5 allocs/op |
5 allocs/op |
1 |
BenchmarkTemplateRenderer_Parallel |
7421 ns/op 2952 B/op 31 allocs/op |
12250 ns/op 3028 B/op 34 allocs/op |
0.61 |
BenchmarkTemplateRenderer_Parallel - ns/op |
7421 ns/op |
12250 ns/op |
0.61 |
BenchmarkTemplateRenderer_Parallel - B/op |
2952 B/op |
3028 B/op |
0.97 |
BenchmarkTemplateRenderer_Parallel - allocs/op |
31 allocs/op |
34 allocs/op |
0.91 |
BenchmarkResolveDependencies_Small |
2591 ns/op 328 B/op 30 allocs/op |
2493 ns/op 328 B/op 30 allocs/op |
1.04 |
BenchmarkResolveDependencies_Small - ns/op |
2591 ns/op |
2493 ns/op |
1.04 |
BenchmarkResolveDependencies_Small - B/op |
328 B/op |
328 B/op |
1 |
BenchmarkResolveDependencies_Small - allocs/op |
30 allocs/op |
30 allocs/op |
1 |
BenchmarkResolveDependencies_Medium |
7728 ns/op 3464 B/op 71 allocs/op |
7722 ns/op 3464 B/op 71 allocs/op |
1.00 |
BenchmarkResolveDependencies_Medium - ns/op |
7728 ns/op |
7722 ns/op |
1.00 |
BenchmarkResolveDependencies_Medium - B/op |
3464 B/op |
3464 B/op |
1 |
BenchmarkResolveDependencies_Medium - allocs/op |
71 allocs/op |
71 allocs/op |
1 |
BenchmarkResolveDependencies_Large |
10937 ns/op 4056 B/op 114 allocs/op |
11307 ns/op 4056 B/op 114 allocs/op |
0.97 |
BenchmarkResolveDependencies_Large - ns/op |
10937 ns/op |
11307 ns/op |
0.97 |
BenchmarkResolveDependencies_Large - B/op |
4056 B/op |
4056 B/op |
1 |
BenchmarkResolveDependencies_Large - allocs/op |
114 allocs/op |
114 allocs/op |
1 |
BenchmarkResolveDependencies_Deep |
4433 ns/op 3272 B/op 16 allocs/op |
4646 ns/op 3272 B/op 16 allocs/op |
0.95 |
BenchmarkResolveDependencies_Deep - ns/op |
4433 ns/op |
4646 ns/op |
0.95 |
BenchmarkResolveDependencies_Deep - B/op |
3272 B/op |
3272 B/op |
1 |
BenchmarkResolveDependencies_Deep - allocs/op |
16 allocs/op |
16 allocs/op |
1 |
BenchmarkResolveDependencies_Wide |
10774 ns/op 7432 B/op 21 allocs/op |
10958 ns/op 7432 B/op 21 allocs/op |
0.98 |
BenchmarkResolveDependencies_Wide - ns/op |
10774 ns/op |
10958 ns/op |
0.98 |
BenchmarkResolveDependencies_Wide - B/op |
7432 B/op |
7432 B/op |
1 |
BenchmarkResolveDependencies_Wide - allocs/op |
21 allocs/op |
21 allocs/op |
1 |
BenchmarkValidateDAG |
23471 ns/op 8792 B/op 275 allocs/op |
40722 ns/op 8792 B/op 275 allocs/op |
0.58 |
BenchmarkValidateDAG - ns/op |
23471 ns/op |
40722 ns/op |
0.58 |
BenchmarkValidateDAG - B/op |
8792 B/op |
8792 B/op |
1 |
BenchmarkValidateDAG - allocs/op |
275 allocs/op |
275 allocs/op |
1 |
BenchmarkBuildDependencyTree |
7002 ns/op 3680 B/op 116 allocs/op |
11856 ns/op 3680 B/op 116 allocs/op |
0.59 |
BenchmarkBuildDependencyTree - ns/op |
7002 ns/op |
11856 ns/op |
0.59 |
BenchmarkBuildDependencyTree - B/op |
3680 B/op |
3680 B/op |
1 |
BenchmarkBuildDependencyTree - allocs/op |
116 allocs/op |
116 allocs/op |
1 |
BenchmarkGetDependents |
780.2 ns/op 40 B/op 3 allocs/op |
898.6 ns/op 72 B/op 5 allocs/op |
0.87 |
BenchmarkGetDependents - ns/op |
780.2 ns/op |
898.6 ns/op |
0.87 |
BenchmarkGetDependents - B/op |
40 B/op |
72 B/op |
0.56 |
BenchmarkGetDependents - allocs/op |
3 allocs/op |
5 allocs/op |
0.60 |
BenchmarkResolveMultiple |
7792 ns/op 3496 B/op 75 allocs/op |
7903 ns/op 3496 B/op 75 allocs/op |
0.99 |
BenchmarkResolveMultiple - ns/op |
7792 ns/op |
7903 ns/op |
0.99 |
BenchmarkResolveMultiple - B/op |
3496 B/op |
3496 B/op |
1 |
BenchmarkResolveMultiple - allocs/op |
75 allocs/op |
75 allocs/op |
1 |
BenchmarkEmbeddedCatalog_ResolveDependencies |
253.4 ns/op 24 B/op 2 allocs/op |
378.2 ns/op 56 B/op 3 allocs/op |
0.67 |
BenchmarkEmbeddedCatalog_ResolveDependencies - ns/op |
253.4 ns/op |
378.2 ns/op |
0.67 |
BenchmarkEmbeddedCatalog_ResolveDependencies - B/op |
24 B/op |
56 B/op |
0.43 |
BenchmarkEmbeddedCatalog_ResolveDependencies - allocs/op |
2 allocs/op |
3 allocs/op |
0.67 |
BenchmarkEmbeddedCatalog_ValidateDAG |
16185 ns/op 7272 B/op 54 allocs/op |
16217 ns/op 7264 B/op 51 allocs/op |
1.00 |
BenchmarkEmbeddedCatalog_ValidateDAG - ns/op |
16185 ns/op |
16217 ns/op |
1.00 |
BenchmarkEmbeddedCatalog_ValidateDAG - B/op |
7272 B/op |
7264 B/op |
1.00 |
BenchmarkEmbeddedCatalog_ValidateDAG - allocs/op |
54 allocs/op |
51 allocs/op |
1.06 |
BenchmarkGenerate |
910171 ns/op 397569 B/op 5093 allocs/op |
908003 ns/op 401217 B/op 5142 allocs/op |
1.00 |
BenchmarkGenerate - ns/op |
910171 ns/op |
908003 ns/op |
1.00 |
BenchmarkGenerate - B/op |
397569 B/op |
401217 B/op |
0.99 |
BenchmarkGenerate - allocs/op |
5093 allocs/op |
5142 allocs/op |
0.99 |
BenchmarkGenerateWithAllFeatures |
1147577 ns/op 470673 B/op 7112 allocs/op |
1171097 ns/op 471570 B/op 7122 allocs/op |
0.98 |
BenchmarkGenerateWithAllFeatures - ns/op |
1147577 ns/op |
1171097 ns/op |
0.98 |
BenchmarkGenerateWithAllFeatures - B/op |
470673 B/op |
471570 B/op |
1.00 |
BenchmarkGenerateWithAllFeatures - allocs/op |
7112 allocs/op |
7122 allocs/op |
1.00 |
BenchmarkCleanGeneratedDir |
917988 ns/op 404361 B/op 5165 allocs/op |
914410 ns/op 405240 B/op 5188 allocs/op |
1.00 |
BenchmarkCleanGeneratedDir - ns/op |
917988 ns/op |
914410 ns/op |
1.00 |
BenchmarkCleanGeneratedDir - B/op |
404361 B/op |
405240 B/op |
1.00 |
BenchmarkCleanGeneratedDir - allocs/op |
5165 allocs/op |
5188 allocs/op |
1.00 |
BenchmarkInitialize |
541070 ns/op 258737 B/op 3328 allocs/op |
484225 ns/op 258930 B/op 3336 allocs/op |
1.12 |
BenchmarkInitialize - ns/op |
541070 ns/op |
484225 ns/op |
1.12 |
BenchmarkInitialize - B/op |
258737 B/op |
258930 B/op |
1.00 |
BenchmarkInitialize - allocs/op |
3328 allocs/op |
3336 allocs/op |
1.00 |
BenchmarkInitializeWithExistingWorkspace |
1011582 ns/op 436282 B/op 5678 allocs/op |
995869 ns/op 444694 B/op 5834 allocs/op |
1.02 |
BenchmarkInitializeWithExistingWorkspace - ns/op |
1011582 ns/op |
995869 ns/op |
1.02 |
BenchmarkInitializeWithExistingWorkspace - B/op |
436282 B/op |
444694 B/op |
0.98 |
BenchmarkInitializeWithExistingWorkspace - allocs/op |
5678 allocs/op |
5834 allocs/op |
0.97 |
BenchmarkDetectRoot |
1465 ns/op 456 B/op 13 allocs/op |
1583 ns/op 456 B/op 13 allocs/op |
0.93 |
BenchmarkDetectRoot - ns/op |
1465 ns/op |
1583 ns/op |
0.93 |
BenchmarkDetectRoot - B/op |
456 B/op |
456 B/op |
1 |
BenchmarkDetectRoot - allocs/op |
13 allocs/op |
13 allocs/op |
1 |
BenchmarkValidate |
23126 ns/op 14552 B/op 175 allocs/op |
25351 ns/op 14568 B/op 176 allocs/op |
0.91 |
BenchmarkValidate - ns/op |
23126 ns/op |
25351 ns/op |
0.91 |
BenchmarkValidate - B/op |
14552 B/op |
14568 B/op |
1.00 |
BenchmarkValidate - allocs/op |
175 allocs/op |
176 allocs/op |
0.99 |
BenchmarkValidateWithManyServices |
64130 ns/op 30872 B/op 466 allocs/op |
66315 ns/op 30872 B/op 467 allocs/op |
0.97 |
BenchmarkValidateWithManyServices - ns/op |
64130 ns/op |
66315 ns/op |
0.97 |
BenchmarkValidateWithManyServices - B/op |
30872 B/op |
30872 B/op |
1 |
BenchmarkValidateWithManyServices - allocs/op |
466 allocs/op |
467 allocs/op |
1.00 |
BenchmarkValidateMinimal |
13260 ns/op 10496 B/op 104 allocs/op |
13854 ns/op 10496 B/op 105 allocs/op |
0.96 |
BenchmarkValidateMinimal - ns/op |
13260 ns/op |
13854 ns/op |
0.96 |
BenchmarkValidateMinimal - B/op |
10496 B/op |
10496 B/op |
1 |
BenchmarkValidateMinimal - allocs/op |
104 allocs/op |
105 allocs/op |
0.99 |
This comment was automatically generated by workflow using github-action-benchmark.
|
📊 Binary Size No significant change
|
1 similar comment
|
📊 Binary Size No significant change
|
|
📊 Binary Size No significant change
|
1 similar comment
|
📊 Binary Size No significant change
|
- Replace raw string literals with svcIconReleased/svcIconUnreleased constants in services_list.go to fix goconst lint violations - Bump Go version to 1.25 in go.mod and all ci.yml jobs to fix govulncheck failures for GO-2026-4602 (os.ReadDir) and GO-2026-4601 (net/url IPv6) - Add pr-description.md to .gitignore
go1.25 resolved to 1.25.7 on the runner; GO-2026-4602 and GO-2026-4601 are fixed in go1.25.8+. Jumping to 1.26 (local toolchain version) ensures govulncheck no longer reports these standard library vulnerabilities.
dgtalbug
force-pushed
the
019-view-design
branch
from
March 9, 2026 12:33
f06cbef to
73034de
Compare
|
📊 Binary Size No significant change
|
|
📊 Binary Size No significant change
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description
This PR implements feature #19: 019-view-design
Type of Change
Related Issue
Relates to feature #19 -
019-view-designChanges Made
Implementation Summary
Completed Work by Phase
Files Changed Summary
Testing
Test Execution Results
$ make test ✅ All tests passCoverage Summary
internal/appinternal/brandinginternal/configinternal/preferencesinternal/stateinternal/xdgpkg/catalogpkg/clipkg/cli/configpkg/cli/servicespkg/cli/workspacepkg/logpkg/storepkg/store/localpkg/ui/componentpkg/ui/themepkg/ui/viewpkg/versionpkg/workspacepkg/workspace/manifestpkg/workspace/servicespkg/workspace/store/localpkg/workspace/templateCritical packages all meet or exceed their coverage targets! 🎉
Checklist
Screenshots (if applicable)
Additional Notes
Design Decisions
Ready for Review! 🚀
Branch:
019-view-designSpec Directory:
specs/019-view-designGenerated: 2026-03-09 16:44:59