mirror of
https://github.com/karust/openserp.git
synced 2026-08-16 05:16:02 +08:00
Add contributor onboarding kit
This commit is contained in:
76
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
76
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
name: Bug report
|
||||
description: Report a reproducible OpenSERP bug.
|
||||
title: "bug: "
|
||||
labels: ["bug"]
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: |
|
||||
Thanks for taking the time to report a bug. Reproducible reports are the fastest to fix.
|
||||
- type: textarea
|
||||
id: summary
|
||||
attributes:
|
||||
label: What happened?
|
||||
description: Describe the unexpected behavior and what you expected instead.
|
||||
placeholder: "Google search returns empty results for ..."
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: reproduce
|
||||
attributes:
|
||||
label: How do we reproduce it?
|
||||
description: Include the exact command, request, config, and minimal input.
|
||||
placeholder: |
|
||||
1. Run `openserp serve ...`
|
||||
2. Request `curl "..."`
|
||||
3. See ...
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: mode
|
||||
attributes:
|
||||
label: Retrieval mode
|
||||
options:
|
||||
- browser
|
||||
- raw
|
||||
- both
|
||||
- not sure
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: engine
|
||||
attributes:
|
||||
label: Engine
|
||||
options:
|
||||
- google
|
||||
- yandex
|
||||
- baidu
|
||||
- bing
|
||||
- duckduckgo
|
||||
- ecosia
|
||||
- megasearch
|
||||
- not engine-specific
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: version
|
||||
attributes:
|
||||
label: OpenSERP version
|
||||
description: Paste `openserp --version`, the Docker tag, or the commit SHA.
|
||||
placeholder: "0.8.0 / v0.7.15 / commit SHA"
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: environment
|
||||
attributes:
|
||||
label: Environment
|
||||
description: OS, Go version, Docker/browser version, proxy/captcha setup if relevant.
|
||||
placeholder: "Windows 11, Go 1.24, Docker, Chromium ..."
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: logs
|
||||
attributes:
|
||||
label: Logs or response body
|
||||
description: Paste relevant logs, stack traces, or API responses. Remove secrets and proxy credentials.
|
||||
render: shell
|
||||
8
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
8
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
blank_issues_enabled: true
|
||||
contact_links:
|
||||
- name: Contributing guide
|
||||
url: https://github.com/karust/openserp/blob/main/docs/CONTRIBUTING.md
|
||||
about: Start here before opening a pull request.
|
||||
- name: Add a new engine guide
|
||||
url: https://github.com/karust/openserp/blob/main/docs/ADDING_AN_ENGINE.md
|
||||
about: Implementation checklist for new search engines.
|
||||
47
.github/ISSUE_TEMPLATE/engine_request.yml
vendored
Normal file
47
.github/ISSUE_TEMPLATE/engine_request.yml
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
name: Engine request
|
||||
description: Request support for a new search engine or engine vertical.
|
||||
title: "engine: "
|
||||
labels: ["enhancement"]
|
||||
body:
|
||||
- type: input
|
||||
id: engine
|
||||
attributes:
|
||||
label: Engine name
|
||||
placeholder: "Brave Search"
|
||||
validations:
|
||||
required: true
|
||||
- type: input
|
||||
id: search_url
|
||||
attributes:
|
||||
label: Public search URL
|
||||
placeholder: "https://search.brave.com/search?q=openserp"
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: vertical
|
||||
attributes:
|
||||
label: Result type
|
||||
options:
|
||||
- web
|
||||
- images
|
||||
- web and images
|
||||
- other
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: selectors
|
||||
attributes:
|
||||
label: Known stable selectors or sample HTML
|
||||
description: If you inspected the page, mention stable data attributes or attach a sanitized fixture.
|
||||
- type: textarea
|
||||
id: notes
|
||||
attributes:
|
||||
label: Notes
|
||||
description: Region/language quirks, captcha behavior, pagination, or API constraints.
|
||||
- type: checkboxes
|
||||
id: contribution
|
||||
attributes:
|
||||
label: Contribution
|
||||
options:
|
||||
- label: I can help test this engine.
|
||||
- label: I am willing to implement this engine.
|
||||
47
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
Normal file
47
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
name: Feature request
|
||||
description: Suggest an OpenSERP improvement that is not engine-specific.
|
||||
title: "feat: "
|
||||
labels: ["enhancement"]
|
||||
body:
|
||||
- type: textarea
|
||||
id: problem
|
||||
attributes:
|
||||
label: Problem
|
||||
description: What user problem does this solve?
|
||||
placeholder: "It is hard to ..."
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: proposal
|
||||
attributes:
|
||||
label: Proposed solution
|
||||
description: Describe the behavior, API, CLI, or documentation change you want.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
id: alternatives
|
||||
attributes:
|
||||
label: Alternatives considered
|
||||
description: What workarounds or smaller versions have you considered?
|
||||
- type: dropdown
|
||||
id: area
|
||||
attributes:
|
||||
label: Area
|
||||
options:
|
||||
- CLI
|
||||
- API
|
||||
- docs
|
||||
- parser
|
||||
- proxy
|
||||
- captcha
|
||||
- resilience
|
||||
- tests
|
||||
- other
|
||||
validations:
|
||||
required: true
|
||||
- type: checkboxes
|
||||
id: contribution
|
||||
attributes:
|
||||
label: Contribution
|
||||
options:
|
||||
- label: I am willing to open a PR for this.
|
||||
20
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
20
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
## Summary
|
||||
|
||||
-
|
||||
|
||||
## Why
|
||||
|
||||
-
|
||||
|
||||
## Testing
|
||||
|
||||
- [ ] `make test`
|
||||
- [ ] `make lint`
|
||||
- [ ] `make test-integration` (only for browser, proxy, captcha, or live-engine changes)
|
||||
|
||||
## Checklist
|
||||
|
||||
- [ ] I linked the related issue or explained why there is none.
|
||||
- [ ] I updated docs or examples for changed user-facing behavior.
|
||||
- [ ] I kept unit tests deterministic and free of browser/network dependencies.
|
||||
- [ ] I removed secrets, proxy credentials, and private logs from examples.
|
||||
3
.github/workflows/ci.yml
vendored
3
.github/workflows/ci.yml
vendored
@@ -42,3 +42,6 @@ jobs:
|
||||
|
||||
- name: Run golangci-lint
|
||||
uses: golangci/golangci-lint-action@v6
|
||||
with:
|
||||
version: v1.64.8
|
||||
args: --config .golangci.yml
|
||||
|
||||
Reference in New Issue
Block a user