Files
wehub-resource-sync 9e8f1bbeed
Dashboard / frontend (push) Failing after 0s
Dashboard / api (push) Failing after 0s
Lint PowerShell / powershell-lint (ubuntu-latest) (push) Failing after 1s
Python Lint / Lint Python with Ruff (push) Failing after 1s
ShellCheck / Lint shell scripts (push) Failing after 1s
Matrix Smoke / linux-smoke (push) Failing after 1s
Matrix Smoke / distro: cachyos (push) Failing after 15s
Matrix Smoke / distro: linux-mint-21.3 (push) Failing after 15s
Matrix Smoke / distro: debian-12 (push) Failing after 5m21s
Matrix Smoke / distro: fedora-41 (push) Failing after 4m56s
Matrix Smoke / distro: ubuntu-24.04 (push) Failing after 2m13s
Matrix Smoke / distro: rocky-9 (push) Failing after 10m39s
Matrix Smoke / distro: manjaro (push) Failing after 12m11s
Matrix Smoke / distro: opensuse-tw (push) Failing after 11m53s
Matrix Smoke / distro: archlinux (push) Failing after 20m3s
Matrix Smoke / distro: ubuntu-22.04 (push) Failing after 13m49s
Validate .env Schema / tier-1-env-validation (push) Successful in 52s
Validate .env Schema / tier-2-env-validation (push) Successful in 44s
Validate .env Schema / tier-3-env-validation (push) Successful in 52s
Validate .env Schema / tier-4-env-validation (push) Successful in 51s
Validate Extensions Catalog / Check catalog is up-to-date (push) Failing after 9m47s
Secret Scan / Scan for secrets (push) Failing after 21m4s
Validate Docker Compose / Validate Docker Compose files (push) Has been cancelled
Python Type Check / Type check with mypy (push) Has been cancelled
Validate .env Schema / tier-0-env-validation (push) Has been cancelled
Test Linux / integration-smoke (push) Has been cancelled
Lint PowerShell / powershell-lint (windows-latest) (push) Has been cancelled
Matrix Smoke / macos-smoke (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:31:33 +08:00

3.1 KiB

Contributing to ODS

Thanks for wanting to contribute. ODS is open source and we welcome help from everyone — whether you're fixing a bug, adding a service integration, or tackling a full feature.

Quick Start

  1. Fork this repository and clone your fork locally.
  2. Create a branch for your work:
    git checkout -b my-change
    
  3. Make your changes, test them locally, and commit.
  4. Open a pull request against main.

No CLA, no hoops.

Forks and Custom Editions

Building on ODS for a hardware appliance, lab image, vertical bundle, or downstream distribution? Start with ods/docs/FORKABILITY.md and ods/docs/BUILD-ON-ODS-SERVER.md. They explain the extension points, source-of-truth files, validation commands, independent operation posture, and rebase-friendly patterns that keep custom work easy to maintain.

For changes to installer, compose, lifecycle, auth, model routing, or host mutation surfaces, use ods/docs/HIGH_RISK_CHANGE_MAP.md to choose the right validation before opening a PR.

Every PR should make its changed surface obvious. The pull request template asks contributors to classify the risk, list the checks they ran, and say whether the change needs release-grade validation before a release. Docs-only changes do not need the fleet; operational changes should not rely on "looks small" as the validation argument.

AI-Assisted Contributions

AI tools are welcome for drafting, review, test ideas, documentation, and triage. They do not replace human authorship or maintainer judgment. If AI helped with a PR, say what it helped with in the pull request template.

Human contributors are responsible for:

  • reading the final diff;
  • understanding the changed surface;
  • removing secrets, local logs, private hostnames, and raw support bundles;
  • choosing validation from ods/docs/HIGH_RISK_CHANGE_MAP.md;
  • responding to review comments with project context, not tool output alone.

High-risk surfaces such as installer phases, ods-cli, Compose generation, auth, proxy, model routing, host mutation, and GitHub workflows still require human review and appropriate validation before release.

See ods/docs/AI_WORKFLOW_GUARDRAILS.md for the repository automation policy.

Full Contributor Guide

For current priorities, validation checklists, PR expectations, and style guidelines, see the detailed guide:

ods/CONTRIBUTING.md

That's where we document what we need most, what gets merged fast, and what will get bounced back. Read it before your first PR — it'll save you a review cycle.

Where to Ask Questions

Not sure about something? Open a thread in GitHub Discussions or an issue. We're happy to help you figure out the right approach before you write code.

License

By contributing, you agree that your work will be licensed under the Apache License 2.0.