Skip to content

Latest commit

 

History

History
34 lines (28 loc) · 1.68 KB

File metadata and controls

34 lines (28 loc) · 1.68 KB

Provenance and Clean-Room Statement

learning-pod is an independent implementation. It is not a fork, port, or derivative of Tutor (https://github.com/overhangio/tutor, AGPL-3.0).

Clean-room discipline

To keep this project unambiguously Apache-2.0 and free of AGPL obligations, the following rules apply to everyone who contributes:

  1. Do not read Tutor's source code. Not the Python, not the templates, not the plugin internals. If you have read it in the past, that's fine — just don't consult it while working on learning-pod.
  2. Permitted reference material:
    • Official Open edX documentation at https://docs.openedx.org/
    • The edx-platform repository's own configuration examples, Dockerfiles, and service definitions (AGPL-3.0, but we are reimplementing orchestration around it, not copying it into our codebase).
    • Tutor's public-facing documentation (user-facing commands, config schema) — interfaces, not implementation.
    • Upstream project docs: Podman, docker-compose spec, MySQL, MongoDB, Redis, Elasticsearch, Caddy.
    • Your own experimentation against a running Open edX instance.
  3. When in doubt, reimplement from first principles. If a config key name happens to match Tutor's (e.g. LMS_HOST), that's convergent naming from Open edX conventions, not derivation.
  4. Attribution. This file exists precisely so the clean-room boundary is documented and defensible.

Relationship to Open edX

learning-pod launches, configures, and manages Open edX containers. The Open edX software itself remains AGPL-3.0 and is not redistributed as part of this project — we pull official container images at runtime.