-
Notifications
You must be signed in to change notification settings - Fork 0
How to Change
Practical recipes. For background see Architecture and Contributing.
File: internal/detect/frameworks.go
Adjust detectNode / detectPython / … return Command. Add a test under detect_test.go with a temp directory containing the marker files.
Files: frontend/src/components/kanban/columns.js, styles in _kanban.scss, and any analytics that assume column names (analytics_kanban.go).
Task status strings are part of the on-disk model — migrating existing config.json values if you rename columns.
File: ai_api.go (OllamaEnrichTask) and the modal that applies EnrichResult (TaskDetailModal.jsx).
Keep the JSON shape stable or version it; the modal maps fields into model.Task.
Files: internal/procman/ports.go (+ _unix / _windows).
Log-based detection is best-effort; OS polling covers processes that never print a URL.
Files: proc_unix.go / proc_windows.go.
Preserve group kill so npm run dev children die with the shell. App-level stopping / shuttingDown flags must stay consistent or crash analytics will lie.
- Edit
Preferences.jsx(section list + panel). - Persist either:
-
Go
settings.json(extendanalytics.Settingspattern inconsent.go/ a new settings helper), or - localStorage (theme/AI/channel pattern).
-
Go
- If Go needs the value at runtime (analytics channel), add a binding to push it across.
File: version.go constants UpdateOwner, UpdateRepo.
Updater reads GitHub Releases for that repo.
Files: main.go (Wails options), wails.json (name, company), theme_darwin.go (vibrancy/appearance).
Transparent backgrounds are intentional for sidebar glass — do not paint an opaque full-window background in CSS without checking _glass.scss / sidebar styles.
Anything that must work without network already should: process control, local Ollama, local config.
If you add network calls, fail soft in the UI and avoid blocking Shutdown (analytics already uses a 2s bound).
Large intentional migration: every import path, plus communication to forks. Not required for features; leave alone unless you are doing a dedicated rename PR.
- Update
RELEASE_NOTES.md“Unreleased” → version section. - Tag
vX.Y.Z(stable) orvX.Y.Z-beta.N(beta). - CI builds all platforms, signs macOS ad-hoc, uploads assets.
- Verify About version matches the tag and updater sees the release on the right channel.