Repository navigation
ADR 0009 Open Source Strategy
Haisu Zuo edited this page Oct 10, 2026
·
1 revision
Status: Accepted (supersedes ADR-0003) Date: 2026-10-09 Author: Crowntime WeCom Archive dev (Haisu-approved product direction) Related: GH-166 (#166), GH-167 (#167), GH-168 (#168), GH-203 (#203), Discussion #178
ADR-0003 decided the product would stay closed-source and hosted-only, positioned as fully automated fly-order deterrence for micro teams. Two subsequent shifts reversed its premises:
- Product: the buyer is the owner of a 1–5 person sales/support team, and the commercial model is a low-price, fully self-serve cloud. Any human involvement in onboarding breaks unit economics, which makes zero-touch self-service — and credible fork/self-host distribution — part of the go-to-market rather than a threat to it.
- Operations: the repository's security posture was audited end-to-end (2026-10-09 three-way sweep: code + full git history, issues, PRs, discussions, Actions logs). No credentials were ever committed; the remaining production-fingerprint exposure was explicitly accepted with infrastructure hardening (documented risk acceptance, GH-173), and operational originals now live outside the tree (GH-203).
- License: AGPL-3.0 for the entire single repository — archive core and cloud operations code alike. No proprietary directory, no source exclusion, no additional license restrictions beyond AGPL §7's allowable attribution notices.
- Release mode: make this repository public. The earlier two-repo sanitized-snapshot model is retired; the snapshot tooling survives only as an optional pre-publish self-check. Git history ships as-is (see GH-173 / GH-203 for the boundary decisions).
-
Edition semantics:
APP_EDITIONdistinguishesselfhostvscloudruntime behavior only — never a licensing or confidentiality boundary (details in ADR-0008). Self-hosted must not depend on any cloud purchase, trial, or subscription-expiry state. -
Contributions: DCO (
Signed-off-by), no CLA. Future contribution terms may change, but existing DCO contributions never automatically gain closed-source/relicensing rights. -
Trademark: 康冠时代 (Shenzhen Crowntime Technology Co., Ltd.).
Official self-host packages default to a
Powered by 康冠时代attribution notice, enforced declaratively (NOTICE/trademark policy) — no license locks, phone-home, or kill switches. Forks must not present themselves as official products, hosting, or endorsements, but are free to brand their own distributions. - Operational boundary: production fingerprints, customer data, and live operational configuration never enter the tree; per-host operational originals live in gitignored local storage (GH-203).
- Anyone may fork, self-host, or offer competing hosted services under AGPL-3.0 obligations (including §13's network-source offer). The trademark policy prevents impersonation only; it does not — and is not intended to — prohibit lawful competition.
-
docs/operations/carries generalized, host-agnostic operational references; published defect history stays published (transparency is part of the model). - ADR-0003 (hosted-only strategy) is removed from the tree; this ADR is its successor of record, and the original remains recoverable from git history.
- Governance docs (CONTRIBUTING, Code of Conduct, security policy) describe the DCO/community flow and supersede any older "no external contribution process" statements elsewhere.