Swarm: resolve issues #87-#94 (architecture, tests, performance, CI, quality)#95
Merged
Conversation
#70 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ixes #72 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…tant - Fixes #81 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…r - Fixes #80 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ixes #68 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ixes #68 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…se - Fixes #75 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ere possible - Fixes #59 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…aseline - Fixes #86 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…n - Fixes #82 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…84 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
# Conflicts: # .github/workflows/release.yml # internal/tui/components/sessionlist.go
# Conflicts: # internal/data/chronicle_windows_test.go # internal/data/dbwatch_test.go
…Wave 1 merge Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…#79 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
# Conflicts: # internal/tui/model.go
…Dot helper - Fixes #40 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…r helper - Fixes #39 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… predicate helper - Fixes #34 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… predicate helper - Fixes #34 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… possible - Fixes #50 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…gate where safe - Fixes #52 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ntinel errors Add sentinel error variables to copilot, update, and platform packages. Wrap production error returns with sentinels using fmt.Errorf with wrapping. Replace 49 strings.Contains(err.Error(),...) test assertions with errors.Is. Fixes #53
# Conflicts: # internal/data/store.go
# Conflicts: # internal/tui/model.go
# Conflicts: # internal/update/update.go # internal/update/update_test.go
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Owner
Author
PR Review SummaryVerdict: COMMENT (self-review) Reviewed 59 changed files (+3,805/-1,402) across 4 waves resolving 40 issues. Build, tests, vet, and lint all pass (mage preflight clean). Security: PASS - No blocking issues. Net improvement.Code Quality: PASS - errgroup correct, handlers extraction clean, model decomposition correct.Non-Blocking Follow-ups
|
…pliance Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
# Conflicts: # internal/tui/model.go
- copilot: accept any error from unstarted SDK (platform-dependent) - update: wrap 'no checksum found' with ErrChecksumMismatch sentinel - data: use exec.CommandContext in chronicle_unix.go for noctx Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… group filters - closeStore now cancels copilotSearchCancel and workStatusAICancel before shutting down, preventing goroutine leaks when the TUI exits with active SDK searches or AI analyses in flight - handleDeepSearchResult groups branch now applies filterAttentionGroups, filterPlanGroups, and filterWorkStatusGroups, matching the filter chain in handleGroupsLoaded Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
# Conflicts: # go.mod # go.sum
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.
Summary
Combined PR resolving 8 meta-issues covering architecture, code quality, performance, CI/CD, test health, idiomatic Go, goroutine safety, and repo health improvements.
Issues Resolved
Changes (60 files, +3805/-1401)
Architecture (#87): Split model.go, decomposed Model struct, extracted Update handlers, fixed layering violations, added interface abstractions.
Test Health (#88): Added coverage for platform, work status, copilot analyze, update replace, chronicle PTY, dbwatch. Fixed meaningless test assertions.
Performance (#89): Added DB index, parallelized queries, cached render strings, replaced subqueries with JOINs, reused HTTP client.
CI/CD (#90): Full ./... compilation, pinned linter version, updated action versions, consistent Go version.
Idiomatic Go (#91): errors.Is/As, sync.RWMutex for styles, context propagation, sentinel errors in tests, panic logging.
Quality (#92): Context cancellation in closeStore, goroutine leak fix, noctx linter re-enabled.
Code Quality (#93): Deduplicated filter methods, attention scanning, dot rendering, plan parsing, font detection. Extracted model constant.
Repo Health (#94): Dependabot config, SECURITY.md network disclosure.
Quality Gates