01fd572a89
## Summary Completed Phase 5 refactoring and reached the target architecture. **Architectural milestone achieved:** - Service layer owns all state and is the sole writer - UI is a thin Fyne view, all widget updates marshaled via `fyne.Do` - Core engines are stateless and injectable - Domain types are pure (no `yaml:"-"` fields) - Full module builds and `go vet ./...` clean ## Changes - Bump version: 0.3.6 → 0.4.0 - Update CHANGELOG with Phase 5 summary - Add ROADMAP "Refactoring Follow-Ups" section ## Known follow-up work 1. **Linux test build broken** — `runner_test.go` needs `//go:build windows` tag 2. **File-size limits exceeded** — `operations.go` (486 lines), `jobs_view.go` (415 lines) See ROADMAP.md for details. --------- Co-authored-by: mixeme <mix.public@ya.ru> Reviewed-on: #1
36 lines
791 B
Batchfile
36 lines
791 B
Batchfile
@echo off
|
|
setlocal enabledelayedexpansion
|
|
REM GoSentry test runner
|
|
REM Runs go vet and go test with race detection
|
|
|
|
REM Move to repository root
|
|
cd /d "%~dp0\.."
|
|
|
|
REM Fyne uses native libraries through CGO. MSYS2 UCRT64 provides the GCC toolchain
|
|
REM expected by the Windows build; prepending it keeps the script self-contained
|
|
REM without permanently changing the user's system PATH.
|
|
if exist "C:\msys64\ucrt64\bin" set "PATH=C:\msys64\ucrt64\bin;%PATH%"
|
|
|
|
REM Race detector requires CGO
|
|
set "CGO_ENABLED=1"
|
|
|
|
echo Running go vet...
|
|
go vet ./...
|
|
if errorlevel 1 (
|
|
echo.
|
|
echo ✗ go vet failed
|
|
exit /b 1
|
|
)
|
|
|
|
echo.
|
|
echo Running go test with race detection...
|
|
go test -race ./...
|
|
if errorlevel 1 (
|
|
echo.
|
|
echo ✗ go test failed
|
|
exit /b 1
|
|
)
|
|
|
|
echo.
|
|
echo ✓ All tests passed
|