mirror of
https://github.com/NewFuture/DDNS.git
synced 2026-10-20 00:16:45 +00:00
Co-authored-by: NewFuture <6290356+NewFuture@users.noreply.github.com> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
1.5 KiB
1.5 KiB
Contributing to DDNS
Development workflow
- Start from a clear issue or change goal.
- Read
AGENTS.mdand the closest directoryAGENTS.md. - Update implementation, tests, schemas or metadata, and Chinese/English documentation together when behavior changes.
- Run focused checks while iterating and the full affected suite before opening a pull request.
- Complete the pull request template with compatibility and validation evidence.
Runtime constraints
- Code under
ddns/,run.py, and tests supports Python 2.7 and current Python 3 versions. - Runtime dependencies remain standard-library only.
- Repository tools under
tools/target Python 3.12+. - Preserve existing CLI, configuration, provider, schema, and cache contracts unless a breaking change is explicitly approved.
Common validation
python -m unittest discover tests -v
python -m unittest tests.e2e -v
ruff check .
ruff format --check .
npm --prefix docs ci
npm --prefix docs run build
Run only the checks relevant to your change while iterating, but do not skip an affected compatibility or platform suite.
Pull requests
- Keep changes focused and reviewable.
- Use a conventional title such as
fix(http): bound retry failures. - Do not include credentials, private configuration, customer identifiers, or live provider responses.
- Do not use real DNS credentials or mutate live DNS for validation.
- Agent-authored changes follow the same review and quality requirements as human-authored changes.