Skip to content

feat(zero-config): audit defaults, propose Zeus overrides#31

Merged
kanywst merged 4 commits into
mainfrom
feat/zero-config-defaults
May 24, 2026
Merged

feat(zero-config): audit defaults, propose Zeus overrides#31
kanywst merged 4 commits into
mainfrom
feat/zero-config-defaults

Conversation

@kanywst
Copy link
Copy Markdown
Member

@kanywst kanywst commented May 24, 2026

Goal

Audit VS Code's inherited defaults and propose Zeus overrides where the inherited setting is friction. The bar is Ghostty's: 'open it, work.'

Design: `docs/zeus-zero-config.md`

What this PR ships

  • `docs/zeus-zero-config.md` — audit + proposed overrides

What this PR does NOT ship

Implementation. A follow-up adds `resources/profiles/zeus-default.json` and the first-run AI prompt UI.

Coverage

Welcome, telemetry, sign-in, files (autosave, trailing whitespace, final newline, eol), editor (format-on-save, minimap, font), terminal, search, git, Zeus-specific AI defaults.

Each override documents: what changes, why the inherited default is friction, who the override pessimizes for.

Adds 'docs/zeus-zero-config.md' which audits VS Code's inherited
defaults and proposes Zeus overrides where the inherited setting is
friction. The bar is Ghostty's: 'open it, work.'

Covers welcome, telemetry, sign-in, files, editor, terminal, search,
git, and Zeus-specific AI defaults. Each override documents what
changes, why the VS Code default is friction, and who the override
pessimizes for.

Audit only. Profile JSON implementation lands in a follow-up.
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 24, 2026

Warning

Review limit reached

@kanywst, we couldn't start this review because you've used your available PR reviews for now.

Your plan currently allows 1 review/hour. Refill in 16 minutes and 16 seconds.

Your organization has run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After more review capacity refills, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than trial, open-source, and free plans. In all cases, review capacity refills continuously over time.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: b9b3c618-2624-4ce1-8320-fbdab76b75c9

📥 Commits

Reviewing files that changed from the base of the PR and between b82d214 and 332ad68.

📒 Files selected for processing (1)
  • docs/zeus-zero-config.md
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/zero-config-defaults

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds a documentation file defining zero-config default settings for the Zeus editor. The reviewer provided feedback on several proposed defaults, suggesting adjustments to auto-save behavior, line-ending handling, Linux font specifications, and Git synchronization confirmations to ensure a smoother and safer user experience.

Comment thread docs/zeus-zero-config.md Outdated
Comment thread docs/zeus-zero-config.md Outdated
Comment thread docs/zeus-zero-config.md Outdated
Comment thread docs/zeus-zero-config.md Outdated
@kanywst kanywst marked this pull request as ready for review May 24, 2026 11:56
- files.autoSave: afterDelay -> onFocusChange. afterDelay + formatOnSave
  rearranges code mid-typing during the 1s pause; onFocusChange saves
  on tab/palette/terminal focus shifts, strictly safer than 'off'
  without that footgun.
- files.eol: '\n' -> keep 'auto'. Pinning to '\n' globally silently
  rewrites .bat/PowerShell/legacy CRLF files on save. Per-repo
  enforcement is .editorconfig's job, not the editor default.
- editor.fontFamily Linux: 'system' -> 'monospace' (the actual
  fontconfig alias for the system's preferred fixed-width family;
  'system' often resolves to a variable-width font).
- git.confirmSync: revert to keep true. Sync = push + pull; one
  stray click can publish unfinished work, and the keystroke cost
  is small.
@kanywst
Copy link
Copy Markdown
Member Author

kanywst commented May 24, 2026

/gemini review

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new documentation file, docs/zeus-zero-config.md, which outlines the proposed zero-config default settings for the Zeus editor to improve the initial user experience. The document details overrides for various VS Code defaults, including telemetry, file saving, and editor behavior. Feedback indicates that several entries are missing the "Why" and "Trade-off" explanations required by the document's own principles. Additionally, there are suggestions to use modifications mode for formatOnSave to prevent unintended changes in legacy code and to document the potential for authentication prompts when enabling git.autofetch.

Comment thread docs/zeus-zero-config.md
Comment thread docs/zeus-zero-config.md
Comment thread docs/zeus-zero-config.md
Address Gemini sweep across the audit doc:

- Welcome / files / editor / terminal / git sections now spell out
  Why and Trade-off for the previously bare bullet lines, matching
  the doc's own intro principle (line 9).
- editor.formatOnSave: pair it with editor.formatOnSaveMode =
  'modifications' so legacy or messy codebases don't get one-shot
  formatter churn the first time they're opened in Zeus. Full-file
  format stays available via per-workspace override.
- git.autofetch trade-off now mentions the SSH-passphrase / no-agent
  case, with the recommendation to fix credential setup rather than
  disable the default.
@kanywst
Copy link
Copy Markdown
Member Author

kanywst commented May 24, 2026

/gemini review

Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a documentation audit for Zeus's zero-config defaults, proposing several overrides to standard VS Code settings to improve the out-of-the-box experience. Review feedback suggests refining the files.trimTrailingWhitespace setting with a Markdown-specific override to preserve syntax, clarifying the SCM dependency for editor.formatOnSaveMode: "modifications", and providing a concrete font stack for cross-platform consistency. Additionally, a correction was noted regarding the default behavior of macOS Terminal in relation to the copyOnSelection setting.

Comment thread docs/zeus-zero-config.md Outdated
Comment thread docs/zeus-zero-config.md
Comment thread docs/zeus-zero-config.md Outdated
Comment thread docs/zeus-zero-config.md Outdated
@kanywst
Copy link
Copy Markdown
Member Author

kanywst commented May 24, 2026

/gemini review

@gemini-code-assist
Copy link
Copy Markdown

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@kanywst kanywst merged commit ee6118c into main May 24, 2026
4 checks passed
@kanywst kanywst deleted the feat/zero-config-defaults branch May 24, 2026 15:42
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