The code leg of the opendox project: the implementation and its
tests. The requirements it implements live in
opensoft/openDox-spec.
Clone the assembly root, not this repository. This leg is mounted as a
submodule at code/ inside
opensoft/openDox, which
is what pins the commit of this repository that the project currently is:
git clone --recurse-submodules https://github.com/opensoft/openDox.git
cd openDox
make bootstrapWorking here directly is fine — it is an ordinary repository with an ordinary
branch. What advancing this leg does NOT do is advance the project: that is a
commit in the assembly root moving the gitlink, contracts/code-pin.yaml and
any workflow @<sha> reference together.
Being the code leg confers no authority over the implementation. The split is navigation; authority travels in grants, and a project that keeps spec and code in one repository is reviewed identically.
Topic: xf-project-opendox.
Contributing guidelines and the code of conduct live in the assembly root,
not here: see
CONTRIBUTING.md
and
CODE_OF_CONDUCT.md
in opensoft/openDox. Security reports for this repository go through
SECURITY.md. The validate check is a required status check
on main, enforced by a repository ruleset — see
docs/branch-protection.md. It runs the whole
suite, tests/ and tests_runtime/, with the conftest chain in play and a
PostgreSQL service, and it declares no exclusion (plan 034 T036;
add-neutral-product-standalone-operability requirement 9). Until then it ran
a narrowed set of suites (RULED Q-L5 (b′), opensoft/openxFactory#656,
2026-09-10). That ruling gave the openDox → openXdox dependency as the reason,
but the dependency was inverted at import time first. The live cause of the
narrowing was the carved code's reaches into ideation_dashboard,
openxFactory's own package, and plan 034's phase 1 removed them.
The doc index for this repository. Everything under docs/ is listed here,
and a new document is linked from this table in the same pull request that
adds it — the xFactory family's standing rule, levelled across all six
openDox/openXdox repositories by the OQ-O scaffold pass
(opensoft/openxFactory#656).
| document | what it is |
|---|---|
| docs/branch-protection.md | the repository ruleset that makes validate a required status check on main, its evaluate → active history, and the one policy difference between the two families |
| docs/profile-registration-runbook.md | the host profile: the one opendox.domain_profile.register() call a descendant makes at process start, what openDox reads off it, the default profile openDox's entry points register where no host has (and until when a host's registration still replaces it), how a process that builds nothing refuses, and how RULED ASK-4 Q5's one registration serves both legs' accessors without an import between them |