Skip to content

feat: redesign projects controls and settings navigation - #61

Merged
klioen merged 5 commits into
mainfrom
feat/files-crud
Oct 17, 2026
Merged

klioen merged 5 commits into
mainfrom
feat/files-crud

Conversation

@klioen

@klioen klioen commented Oct 17, 2026 •

Copy link
Copy Markdown
Owner

Summary

Move the Projects-panel toggle into the Projects header, move Settings to the Projects footer, and replace the Settings modal with an Orca-inspired full-window navigation surface. This follow-up also fixes the Windows path normalization regressions reported by the merged PR #60 CI run.

Related work

Changes

  • Put the Projects toggle beside the SpireCode identity and keep a compact top-left reopen action when the panel is collapsed.
  • Put the Settings action at the bottom of the Projects panel and remove Settings, Projects, and theme controls from the workspace top-right cluster; theme selection now exists only in General Settings.
  • Replace SettingsDialog with a full-window SettingsPage that has a stable title strip, explicit Back to workspace action, autofocus search, grouped navigation, active-page semantics, and a centered scrollable content column.
  • Restyle setting rows and resource groups as neutral contained surfaces while preserving all existing settings APIs and persistence behavior.
  • Keep readiness failures opening Agent settings automatically; manual entry now opens General.
  • Normalize filesystem mutation relative paths, discovered Git roots, and displayed settings resource paths across Windows and POSIX. This addresses the four Windows failures from feat: add secure file and source control workflows #60.
  • Add bilingual copy, interaction/style tests, changelog text, and a standard SDLC change artifact.

Risk and boundaries

  • Regression risk: Medium. The Workbench navigation shell, Projects rail, and Settings layout change, but no IPC contract, persistence schema, or Main/Renderer authority boundary changes.
  • Security/privacy impact: None. Existing typed settings APIs and filesystem/Git validation remain unchanged.
  • Data or configuration migration: None.
  • Platform/package impact: Renderer layout changes on all desktop targets. Windows path normalization fixes affect Main output formatting and canonical project identity.
  • Rollback approach: Revert this PR; no stored state requires migration.

Verification

pnpm check
# 68 test files, 453 tests passed; release tests passed

pnpm build
# Renderer and Electron Main builds passed

pnpm vitest run electron/domains/filesystem/filesystem.test.ts electron/domains/projects/projects.test.ts electron/domains/settings/settings.test.ts
# 3 files, 38 tests passed

git diff --check HEAD
# passed

pnpm bundle
# macOS arm64 App signature, packaged-app smoke, and DMG smoke passed
  • Tests cover new or changed behavior.
  • pnpm check passes locally.
  • macOS arm64, Windows x64, and Linux x64 target-host CI bundle/smoke jobs passed.
  • No screenshot is attached; component interaction and CSS contract tests cover the new layout.

Contributor checklist

  • I read CONTRIBUTING.md and the repository AGENTS.md.
  • The change follows docs/orca-aligned-settings/change.md.
  • Renderer/Main authority, relative-path validation, Git argument arrays, and credential boundaries remain intact.
  • Public docs and CHANGELOG.md are updated.
  • The diff contains no credentials, private data, dependency updates, or generated release artifacts.
  • I reviewed the diff for correctness, security/privacy, and compliance with accepted scope.

@klioen
klioen merged commit b6e9aaa into main Oct 17, 2026
4 checks passed
@klioen
klioen deleted the feat/files-crud branch October 17, 2026 09:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant