Skip to content

Add moyu anti-overengineering rules#281

Open
uucz wants to merge 2 commits into
detailobsessed:mainfrom
uucz:add-moyu
Open

Add moyu anti-overengineering rules#281
uucz wants to merge 2 commits into
detailobsessed:mainfrom
uucz:add-moyu

Conversation

@uucz

@uucz uucz commented Mar 23, 2026

Copy link
Copy Markdown

Adds moyu anti-overengineering windsurf rules. Three iron rules: only change what was asked, simplest solution first, ask when unsure. Source: https://github.com/uucz/moyu


Open with Devin

Summary by CodeRabbit

  • Documentation
    • Added comprehensive "Moyu — Anti-Over-Engineering Rules" documentation with core minimalist engineering principles, a "Three Iron Rules" framework for constraining scope changes and prioritizing simplicity, a submission validation checklist, and Windsurf IDE integration setup instructions.

@uucz uucz requested a review from ichoosetoaccept as a code owner March 23, 2026 07:37
Copilot AI review requested due to automatic review settings March 23, 2026 07:37
@coderabbitai

coderabbitai Bot commented Mar 23, 2026

Copy link
Copy Markdown
Contributor

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: a2456159-a092-43c3-8a57-486cbfcce9ff

📥 Commits

Reviewing files that changed from the base of the PR and between 9c9c25b and 178066e.

📒 Files selected for processing (2)
  • memories/uucz/Global-AI-rules/moyu/global-rules.md
  • memories/uucz/README.md
✅ Files skipped from review due to trivial changes (2)
  • memories/uucz/README.md
  • memories/uucz/Global-AI-rules/moyu/global-rules.md

📝 Walkthrough

Walkthrough

Two new documentation files are added to establish "Moyu — Anti-Over-Engineering Rules," a set of principles designed to constrain AI-assisted development to requested changes only. Includes guidance rules and Windsurf integration setup instructions.

Changes

Cohort / File(s) Summary
Moyu Anti-Over-Engineering Documentation
memories/uucz/README.md, memories/uucz/Global-AI-rules/moyu/global-rules.md
Added documentation introducing Moyu rules with engineering principles focused on simplicity and scope limitation. Includes identity statement, three core rules, comparison table for over-engineering patterns, submission checklist, and Windsurf setup instructions.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title directly matches the main objective: adding moyu anti-overengineering rules with documentation and setup guidelines.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Adds a “Moyu” (anti-overengineering) rules document intended for Windsurf/Cascade usage, capturing a minimal-change philosophy and a checklist to prevent scope creep.

Changes:

  • Introduces a new Moyu ruleset document (Chinese + brief English metadata) emphasizing minimal diffs and simplest-solution-first.
  • Adds a comparison table (“内卷 vs 摸鱼”) and a short checklist for self-review before expanding scope.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread memories/uucz/moyu.md Outdated
Comment on lines +13 to +16
## 身份

你是一个深谙"少即是多"的 Staff 级工程师。克制是能力,不是偷懒。你绝不内卷。你摸鱼。

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

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

Repo contribution guidelines describe a per-user directory structure with a memories/<username>/README.md to explain usage. memories/uucz/ currently only contains this rules file; adding a README for this folder would help others understand how/where to copy/apply these rules.

Copilot uses AI. Check for mistakes.
Comment thread memories/uucz/moyu.md Outdated
# 摸鱼 (Moyu)

> 最好的代码是你没写的代码。最好的 PR 是最小的 PR。

Copilot AI Mar 23, 2026

Copy link

Choose a reason for hiding this comment

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

This file is named moyu.md, but repo docs say Windsurf only recognizes global_rules.md (global) and .windsurfrules (workspace) as rule filenames (see memories/README.md). If the intent is for these rules to be directly usable by Windsurf without manual copying, consider renaming/moving this content into one of the recognized filenames (or add a short note explaining how users should apply it).

Suggested change
> 注意:Windsurf 只会自动加载 `global_rules.md``.windsurfrules`。如需让本规则生效,请将其内容复制或合并到上述其中一个文件中使用。

Copilot uses AI. Check for mistakes.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
memories/uucz/moyu.md (1)

32-32: Soften the absolute “no tests unless asked” rule to avoid quality regressions.

不问不写 is too strict for cases where behavior changes require minimal test updates to keep CI and reliability intact.

✏️ Suggested wording tweak
-| 没人要求写一套测试 | 不问不写 |
+| 没人要求写一套测试 | 默认不扩测;若改动行为且现有测试会失效,只补最小必要测试并说明原因 |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@memories/uucz/moyu.md` at line 32, Replace the absolute rule "不问不写" in the
table row containing "没人要求写一套测试 | 不问不写" with a softer guideline that encourages
adding tests for behavioral changes (e.g., "优先补充测试;对小改动可备注并补测"), so the policy
reads as a recommendation to add tests when changes affect behavior rather than
a strict ban; locate the table cell containing the exact phrase "不问不写" and
update it to the revised wording.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@memories/uucz/moyu.md`:
- Line 32: Replace the absolute rule "不问不写" in the table row containing
"没人要求写一套测试 | 不问不写" with a softer guideline that encourages adding tests for
behavioral changes (e.g., "优先补充测试;对小改动可备注并补测"), so the policy reads as a
recommendation to add tests when changes affect behavior rather than a strict
ban; locate the table cell containing the exact phrase "不问不写" and update it to
the revised wording.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 55ff865b-0b72-40ee-a37d-fd21fc905f88

📥 Commits

Reviewing files that changed from the base of the PR and between 6704a7c and 9c9c25b.

📒 Files selected for processing (1)
  • memories/uucz/moyu.md
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Upload results
🧰 Additional context used
🪛 LanguageTool
memories/uucz/moyu.md

[uncategorized] ~15-~15: 您的意思是“"既"是”吗?
Context: ...是你没写的代码。最好的 PR 是最小的 PR。 ## 身份 你是一个深谙"少即是多"的 Staff 级工程师。克制是能力,不是偷懒。你绝不内卷。你摸鱼。 #...

(JI11_JI2)

🔇 Additional comments (1)
memories/uucz/moyu.md (1)

1-31: Strong, clear anti-overengineering guidance.

This is well-scoped and consistent with the PR goal: it sets concrete boundaries and decision heuristics without unnecessary complexity.

Also applies to: 34-44

devin-ai-integration[bot]

This comment was marked as resolved.

coderabbitai[bot]
coderabbitai Bot previously approved these changes Mar 23, 2026
- Add required README.md for uucz/ directory
- Move rules to Global-AI-rules/moyu/global-rules.md (recognized filename)
- Translate content to English for accessibility
- Remove dangling PUA reference

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Devin Review found 4 new potential issues.

Open in Devin Review

Comment thread memories/uucz/README.md

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📝 Info: Directory structure correctly follows repository conventions

The contribution at memories/uucz/ includes the required README.md and places global rules under Global-AI-rules/moyu/global-rules.md, matching the directory structure specified in memories/README.md:16-50. The file naming (global-rules.md) is consistent with SchneiderSam's existing contributions. The computerk directory is the outlier (no README.md, flat structure), not this PR.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Before submitting, verify:
- Only changed what the user asked for?
- Is there a solution with less code?
- Would removing any line break functionality?

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 Ambiguous checklist item violates rule that content must make sense to others

Line 31 reads "Would removing any line break functionality?" which is grammatically broken and ambiguous. It can be parsed as "Would removing any line break [the] functionality?" (i.e., is every line essential?) or "Would removing any line-break functionality [be acceptable]?" (i.e., should line-break features be removed?). The .windsurfrules rule states: "This is a public repository, so please be respectful of others and make sure the content makes sense to others." This sentence fails that requirement.

Suggested change
- Would removing any line break functionality?
- Would removing any line break the functionality?
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Comment thread memories/uucz/README.md
@@ -0,0 +1,29 @@
# Moyu — Anti-Over-Engineering Rules

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📝 Info: Identical H1 title in both files — borderline DRY but follows common convention

Both memories/uucz/README.md:1 and memories/uucz/Global-AI-rules/moyu/global-rules.md:1 use the identical heading # Moyu — Anti-Over-Engineering Rules. The .windsurfrules mandates DRY. However, having the same H1 in a README (which describes and markets the contribution) and the actual rules file (which is the artifact itself) is standard documentation practice — each file needs a self-contained title for navigability. SchneiderSam's contribution uses different titles (# Welcome to My Windsurf Rules in README vs distinct rule file titles), but that's a style choice, not a requirement. Decided this is not a DRY violation worth flagging as a bug.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Comment thread memories/uucz/README.md

## Why

AI coding assistants tend to over-engineer: fixing one bug but "improving" three others, adding unrequested abstractions, writing comments nobody asked for. Moyu stops this by enforcing minimal, focused changes.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

📝 Info: README 'Why' section paraphrases examples from the rules table

The README's "Why" section at line 25 says "fixing one bug but 'improving' three others, adding unrequested abstractions, writing comments nobody asked for" — which maps almost directly to rows in the comparison table at memories/uucz/Global-AI-rules/moyu/global-rules.md:19-24. This is content overlap that could be considered a DRY violation per .windsurfrules. However, a README summarizing the content it introduces is standard practice and serves a different audience (someone browsing the repo vs. someone using the rules file in Windsurf). Not flagged as a bug since this pattern is inherent to how READMEs function.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

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.

2 participants