v1.1.0: menubar, notifications, bulk import, log search, and a hardening pass - #1
Merged
Conversation
…dening pass Features: - Menubar (tray) presence: start/stop apps and see ports without the window - Desktop notifications on crash (and optionally on ready) - Bulk import: register a whole folder of repos at once - Global log search (Cmd+Shift+F) across every running task - Monorepo detection, per-app auto-start, launch at login, folder start/stop-all - Graceful quit confirmation; update banner shows release notes; local diagnostics log Hardening: - Secret env values encrypted at rest (safeStorage); a project .env can no longer override user-set env or process-control vars (PATH/NODE_OPTIONS/DYLD_*) - Fix silently-dead restart-on-change (chokidar v5 globs), unremovable run-once apps, stuck "starting" state, start/stop races, and readiness hangs - env_vars schema rebuilt so task-scoped overrides save (migration 0006); deleted task vars no longer resurrect; WAL-safe DB export/reset; corrupt-DB recovery dialog - Faster process/port polling; bounded log memory; visibility-gated log streaming Accessibility: - Focus-trapped dialogs, keyboard menus/comboboxes, focusable sidebar rows, accessible status indicators, screen-reader-readable logs, light terminal theme Schema migrations 0006 (env scope indexes) and 0007 (auto_start). Also normalizes punctuation (em/en dashes to hyphens) across comments and strings.
- Add ci.yml: typecheck + lint + test on push/PR (macos-14, matching the release runner so the native-module rebuild path is the same) - ESLint flat config + Prettier config + .prettierignore - Harden packaged binaries: Electron fuses via afterPack disable RunAsNode, NODE_OPTIONS, and --inspect, and enable OnlyLoadAppFromAsar; drop the disable-executable-page-protection entitlement - release.yml: bump actions to node24-native majors, add a tag/version guard, and turn workflow_dispatch into a --publish-never dry-run - Unify the dmg artifact name with the zip (productName)
- CHANGELOG: full 1.1.0 entry, including the downgrade note (encrypted secrets and the schema upgrade are one-way; export a backup first) - README: Highlights section covering the new features - specs/02-data-model: env encryption at rest, the three partial unique indexes, auto_start, migrations 0006/0007, and the updated layering order - specs/04-ui: single-screen add flow and welcome screen - RELEASE: tag/version guard, the dispatch dry-run, and CI - PROGRESS: 1.1.0 pass summary - Normalize punctuation (em/en dashes to hyphens) across the docs
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.
Implements the 1.1.0 milestone: new product features, a broad correctness/security/perf/a11y hardening pass driven by an internal audit, and the supporting tooling/docs. Version bumped to 1.1.0.
Features
Hardening
.envcan no longer override user-set env or process-control vars (PATH/NODE_OPTIONS/DYLD_*)env_varsschema rebuilt so task-scoped overrides save (migration 0006); WAL-safe DB export/reset; corrupt-DB recovery dialogAccessibility
Focus-trapped dialogs, keyboard menus/comboboxes, focusable sidebar rows, accessible status indicators, screen-reader logs.
Infra
CI workflow (typecheck + lint + test), ESLint + Prettier, release tag/version guard, and a
--publish neverdispatch dry-run.Notes
Before tagging the release
Run the workflow manually (Actions > Release > Run workflow) for a
--publish neverdry-run to validate the bumped actions and notarization, then merge and tagv1.1.0.