Skip to content

Commit c3db7c7

Browse files
Merge branch 'main' into fix/date-validation-572
2 parents de0b243 + 84c44ed commit c3db7c7

12 files changed

Lines changed: 1364 additions & 184 deletions

File tree

CHANGELOG.md

Lines changed: 419 additions & 0 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -215,3 +215,52 @@ This part is performed manually by maintainers when it's time to publish a new v
215215
3. **Chrome Web Store Deployment**: Publishing the release triggers the "Publish to Chrome Web Store" workflow, which automatically packages the extension and uploads it for review.
216216

217217
### If you encounter any bugs, please report them at the [Issues page](https://github.com/fossasia/scrum_helper/issues).
218+
219+
## AI-Assisted Contributions Guidelines
220+
221+
This project is receiving an increasing number of AI-assisted contributions. While we welcome the productivity AI tools bring, we require all contributions to maintain our standards for quality, intentionality, and maintainability. To ensure a high signal-to-noise ratio in our repository, please adhere to the following guidelines.
222+
223+
### Expectations from Contributors
224+
225+
* **You must understand your code:** We expect human judgment to be the final filter. You take full responsibility for every line you submit.
226+
* **You must be able to explain:** If asked by a maintainer, you should be able to explicitly explain what your change does, why it is necessary, and how it integrates with the rest of the codebase.
227+
* **Code must be:**
228+
* Thoroughly tested
229+
* Manually validated in a real browser environment
230+
* Aligned with our existing architecture and codebase patterns
231+
232+
### What We Do NOT Accept
233+
234+
* PRs submitted without a clear use case or a linked, pre-approved issue.
235+
* AI-generated code pasted blindly without deep comprehension.
236+
* Duplicate PRs or attempts at solving issues that are already being handled.
237+
* Surface-level "fixes" (e.g., unprompted refactoring, nitpicks) without solid reasoning.
238+
* Features or abstractions that increase overall complexity without delivering tangible user value.
239+
240+
### PR Requirements
241+
242+
* **Linked Issue:** Every PR (unless it is a trivial typo fix) must be linked to an existing issue.
243+
* **Clear Description:** Provide a well-reasoned description detailing the problem and your solution. Do not paste AI-generated summaries of file diffs.
244+
* **Existing Patterns:** Follow the established project conventions implicitly.
245+
* **Avoid Complexity:** Keep changes as minimal and focused as possible.
246+
247+
### AI Best Practices Table
248+
249+
| Area | Good Contribution | Poor Contribution |
250+
| :--- | :--- | :--- |
251+
| **Problem selection** | Solving a verified, pre-existing issue that you understand and ideally have encountered. | Submitting unrequested "improvements" or claiming random issues without a real-world use case. |
252+
| **Understanding** | Using AI to learn the codebase or brainstorm approaches, then writing/refining the final logic yourself. | Over-delegating to AI; submitting logic that you cannot confidently explain or debug. |
253+
| **Code quality** | Focused, minimal changes that address the exact problem efficiently. | Bloated PRs that introduce unnecessary code churn or rewrite entire blocks out of context. |
254+
| **Architecture** | Conforming strictly to the established design patterns and utilities of the project. | Hallucinating new dependencies or forcing foreign paradigms into the codebase. |
255+
| **Validation** | Manually compiling and verifying the extension works, and writing reliable tests. | Submitting code that has never been tested locally or fails basic linting. |
256+
| **Maintainability** | The implemented solution is simpler for us to maintain than the problem it solves. | Adding excessive "clever" complexity that increases the maintainer's review burden. |
257+
| **PR description** | Writing a clear, human-authored explanation of the *why* behind your changes. Including screenshots of your changes.| Pasting a generic, AI-generated summary of the modified files without context. |
258+
| **AI usage** | Disclosing your use of generative tools and verifying that the output makes sense. | Failing to review AI output, resulting in regressions or confidently incorrect logic. |
259+
260+
### Maintainer Policy
261+
262+
* We reserve the right to close low-quality or fully automated PRs that fail to meet these guidelines without extensive review.
263+
* PRs containing features not aligned with our current priorities or roadmap may be closed.
264+
* Contributors are strongly encouraged to pick well-defined, triaged issues to ensure their time and effort result in a successful merge.
265+
266+

agents.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# Rules for AI-assisted contributions
2+
3+
Scrum Helper accepts AI-assisted contributions, but all submissions must meet project standards. The contributor submitting the PR is fully responsible for correctness, scope, and validation.
4+
5+
For setup and contribution process details, see [CONTRIBUTING.md](CONTRIBUTING.md).
6+
7+
## Required rules
8+
9+
### 1) Understand and explain every change
10+
11+
- You must be able to explain what changed, why it changed, and how it interacts with existing code paths (popup, service worker/background, content scripts, GitHub API, i18n, and browser-specific build outputs).
12+
- If you cannot explain a change, do not submit it.
13+
14+
### 2) Keep changes minimal and in scope
15+
16+
- Keep PRs tightly scoped to the stated bugfix or improvement.
17+
- Do not include unrelated cleanup, drive-by refactors, formatting-only churn, or file moves unrelated to the task.
18+
- Do not modify generated outputs or unrelated files unless the task explicitly requires it.
19+
20+
### 3) No new feature without a linked issue
21+
22+
- New features must reference a linked GitHub issue in the PR.
23+
- If no issue exists, open one first and align scope before implementation.
24+
- Bug fixes and maintenance changes should still include clear problem context in the PR description.
25+
26+
### 4) No blind AI output
27+
28+
- Do not paste AI-generated code without reviewing and testing it.
29+
- Follow existing architecture, naming, structure, and error-handling patterns in nearby code.
30+
- Reuse existing helpers before adding new abstractions or duplicate implementations.
31+
32+
### 5) Mandatory validation before PR update
33+
34+
Run these commands locally after your changes and before opening/updating a PR:
35+
36+
```sh
37+
npm run lint
38+
npm run check
39+
npm run build
40+
```
41+
42+
Additional expectations:
43+
44+
- If lint/check fails, fix issues before requesting review.
45+
- Reload and verify the built extension from `dist/chrome` and/or `dist/firefox` for the user-facing behavior you changed.
46+
- Validate edge cases relevant to your change (empty states, missing token/auth, API failures, rate limits, and large result sets where applicable).
47+
48+
## Pull request requirements
49+
50+
- Use a clear PR title and description with problem, approach, and validation evidence.
51+
- List the exact validation steps you ran and outcomes.
52+
- If maintainer feedback conflicts with an AI suggestion, follow maintainer direction.
53+
54+
## Why these rules exist
55+
56+
- Reduce maintainer overhead from speculative or low-signal PRs.
57+
- Prevent regressions from unverified AI-generated changes.
58+
- Keep the codebase consistent, reviewable, and aligned with project direction.

package-lock.json

Lines changed: 40 additions & 40 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@
2626
},
2727
"homepage": "https://github.com/fossasia/scrum_helper",
2828
"devDependencies": {
29-
"@biomejs/biome": "2.4.10",
29+
"@biomejs/biome": "2.4.11",
3030
"autoprefixer": "^10.4.27",
31-
"postcss": "^8.5.8",
31+
"postcss": "^8.5.9",
3232
"tailwindcss": "^4.2.2"
3333
},
3434
"dependencies": {

0 commit comments

Comments
 (0)