From d8e330c7d27c9e7fe67154b3f986a6440ee20871 Mon Sep 17 00:00:00 2001 From: John McLear Date: Sat, 9 May 2026 16:33:41 +0100 Subject: [PATCH] docs: rewrite CONTRIBUTING.md for plugin scope Replaces the etherpad-lite-era boilerplate with a plugin-specific guide: target branch is main, local install via pnpm run plugins i --path, tests run via the etherpad harness, and i18n/a11y are now standing requirements. --- CONTRIBUTING.md | 74 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..d9fbe12 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,74 @@ +# Contributing to ep_ai_chat + +Thanks for helping improve `ep_ai_chat` — a plugin for [Etherpad](https://etherpad.org/). LLM/Agent contributions are explicitly welcome, provided they follow the rules below. + +For shared rules that apply to all Etherpad code (linear commits, deprecation policy, feature flags, stability guarantees), please read [ether/etherpad's CONTRIBUTING.md](https://github.com/ether/etherpad/blob/develop/CONTRIBUTING.md). This document only covers what's specific to plugin work. + +## Plugin-specific rules + +* **Target branch:** PRs go to `main` on this repo. Plugin repos do not use git-flow's `develop` branch. +* **Linear commits, no merge commits.** Rebase if needed. +* **Every bug fix must include a regression test in the same commit.** +* **Internationalization (i18n):** every user-facing string lives in `locales/.json` and is referenced via `data-l10n-id` in templates or `html10n.get(key)` in code. No hardcoded English in markup. +* **Accessibility (a11y):** no nested interactive elements (no `