Contributing
August 9, 2026 · View on GitHub
Contributions should improve the playbook with evidence from real ports, correct a specific technical error, or make the existing process easier to apply.
Choose the Right Location
- Put executable workflows and checklists in
playbooks/. - Put source-language-independent Rust engineering rules in the general suite indexed
by
guidelines/README.md. - Put translation, parity, traceability, and synchronization rules in the porting
section of
guidelines/. - Put lookup material and pattern catalogs in
references/. - Put source-backed investigations in
docs/project/research/. - Put evidence from completed or active ports in
case-studies/. - Put changes to the playbook-improvement process in
_meta/.
Classify guidance by the question it answers: how Rust should be built belongs in the general Rust suite; how source behavior maps to Rust belongs in porting guidance. Avoid duplicating guidance across layers. Add a concise cross-reference to the authoritative document instead.
Validate Changes
Run the same checks as CI from the repository root:
python3 -m unittest discover -s tests -p 'test_*.py' -v
python3 scripts/check_docs.py
UV_NO_BUILD=1 uv --no-config lock --check \
--script docs/project/research/data/extract_lockfile_inventory.py
python3 scripts/check_dependency_cooloff.py
python3 scripts/check_lockfile_inventories.py
bash -n \
.claude/hooks/tbd-closing-reminder.sh \
.claude/scripts/ensure-gh-cli.sh \
.claude/scripts/tbd-session.sh \
.codex/ensure-gh-cli.sh \
.codex/tbd-closing-reminder.sh \
.codex/tbd-session.sh
The unit suite runs the lockfile inventory script end to end against a deterministic
synthetic lockfile. scripts/check_lockfile_inventories.py downloads the exact tbd and
qmd source commits, verifies each lockfile’s SHA-256 digest, regenerates all six
research artifacts, and fails on byte-level drift.
scripts/check_dependency_cooloff.py independently verifies that every registry
artifact in tracked PEP 723 uv lockfiles has at least 14 days of public exposure.
scripts/check_docs.py checks every tracked text file for forbidden invisible or
bidirectional Unicode and every Markdown file for broken relative links, missing
anchors, and unclosed fenced code blocks.
Review Supply-Chain Changes
Read SUPPLY-CHAIN-SECURITY.md before adding or upgrading
executable dependencies, actions, tool downloads, agent hooks, or editor automation.
Apply the 14-day cool-off, require a concrete reason for each upgrade, review immutable
source changes, and record any exception in
SUPPLY-CHAIN-AUDIT-LOG.md.
Submit Changes
Explain the evidence behind factual or process changes.
For new case studies, start with _meta/case-study-observations-template.md and follow
the closure loop in _meta/meta-improving-this-playbook.md.
Keep pull requests focused. Separate broad mechanical reformatting from substantive documentation changes so reviewers can evaluate technical content.