Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 88 additions & 0 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
# Contributing

Thank you for your interest in contributing! This repository is a
**coordination hub** and a satellite of `hyperpolymath/standards`: it
does not own the K9 contractile specification or governance — those are
pinned from `standards` — but it owns the conformance fixtures, the
membership manifest, and the cross-repo drift CI. Human-readable
documentation lives in the root; machine-readable metadata lives under
`.machine_readable/`.

## How to Contribute

We welcome contributions in many forms:

- **Conformance fixtures:** Add or refine `.k9.ncl` cases under
`conformance/valid/` and `conformance/invalid/` (keep
`conformance/manifest.a2ml` in sync).

- **Membership:** Propose member additions/removals via
`.machine_readable/descriptiles/ECOSYSTEM.a2ml`, kept in lockstep with
`.gitmodules` and `scripts/check-membership.sh`.

- **Drift CI & tooling:** Improve `.github/workflows/anchor-drift.yml`
or the helper `scripts/`.

- **Documentation:** Enhance the docs or the AI manifest.

- **Bug reports:** File clear, reproducible issues.

## Getting Started

1. **Read the AI Manifest:** Start with `0-AI-MANIFEST.a2ml` to
understand the repository structure.

2. **Initialise members:** Run `scripts/init-submodules.sh` to populate
`members/` (each member is pinned by commit).

3. **Check membership:** Run `scripts/check-membership.sh` to verify
the manifest, `.gitmodules`, and submodule declarations agree.

4. **Validate conformance:** Run the K9 validator
(`hyperpolymath/k9-validate-action`) over `conformance/valid`
(expect 0 errors) and over `conformance/invalid` with strict mode
(every case must error).

## Development Workflow

### Branch Naming

docs/short-description # Documentation
test/what-added # Test additions
feat/short-description # New features
fix/issue-number-description # Bug fixes
refactor/what-changed # Code improvements
security/what-fixed # Security fixes

### Commit Messages

We follow [Conventional Commits](https://www.conventionalcommits.org/):

<type>(<scope>): <description>

[optional body]

[optional footer]

Types: `feat`, `fix`, `docs`, `test`, `refactor`, `ci`, `chore`,
`security`

## Reporting Bugs

Before reporting: 1. Search existing issues 2. Check if it’s already
fixed in `main`

When reporting, include: - Clear, descriptive title - Environment
details (OS, versions, toolchain) - Steps to reproduce - Expected vs
actual behaviour

## Code of Conduct

All contributors are expected to adhere to our [Code of
Conduct](CODE_OF_CONDUCT.md).

## License

By contributing, you agree that your contributions will be licensed
under the same licenses as the project: code under MPL-2.0 and
documentation under CC-BY-SA-4.0 (see LICENSE and LICENSES/).
86 changes: 0 additions & 86 deletions CONTRIBUTING.adoc

This file was deleted.

8 changes: 4 additions & 4 deletions deno/.github/workflows/rhodibot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# rhodibot.yml — Automated RSR compliance enforcement
#
# Reads root-hygiene rules and auto-fixes what it can:
# - Delete banned files (AI.djot, duplicate CONTRIBUTING.adoc, stale snapshots)
# - Delete banned files (AI.djot, duplicate ../../../.github/CONTRIBUTING.md, stale snapshots)
# - Rename misnamed files (AI.a2ml → 0-AI-MANIFEST.a2ml)
# - Fix SPDX headers (AGPL → PMPL in dotfiles)
# - Create missing required files (SECURITY.md, CONTRIBUTING.md)
Expand Down Expand Up @@ -68,9 +68,9 @@ jobs:
fi

# --- 3. Delete duplicate format files ---
if [ -f "CONTRIBUTING.md" ] && [ -f "CONTRIBUTING.adoc" ]; then
rm CONTRIBUTING.adoc
FIXES="$FIXES\n- Deleted duplicate \`CONTRIBUTING.adoc\` (keeping .md for GitHub)"
if [ -f ".github/CONTRIBUTING.md" ] && [ -f "deno/.github/CONTRIBUTING.md" ]; then
rm deno/.github/CONTRIBUTING.md
FIXES="$FIXES\n- Deleted duplicate \`deno/.github/CONTRIBUTING.md\` (keeping \`.github/CONTRIBUTING.md\` for GitHub)"
CHANGED=true
fi

Expand Down
2 changes: 1 addition & 1 deletion deno/.machine_readable/contractiles/dust/Dustfile.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ These are housekeeping items, not blockers.

### no-duplicate-contributing
- description: Only one CONTRIBUTING format (keep .md)
- run: "! (test -f CONTRIBUTING.md && test -f CONTRIBUTING.adoc)"
- run: "! (test -f CONTRIBUTING.md && test -f ../.github/CONTRIBUTING.md)"
- severity: warning

### no-duplicate-readme
Expand Down
2 changes: 1 addition & 1 deletion deno/0-AI-MANIFEST.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ k9-deno/
├── 0-AI-MANIFEST.a2ml # THIS FILE (start here)
├── README.adoc # High-level orientation (Rich Human)
├── ROADMAP.adoc # Future direction
├── CONTRIBUTING.adoc # Human contribution guide
├── ../.github/CONTRIBUTING.md # Human contribution guide
├── GOVERNANCE.adoc # Decision-making model
├── Justfile # Task runner
├── Containerfile # OCI build
Expand Down
2 changes: 1 addition & 1 deletion deno/CONTRIBUTING.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ We welcome contributions in many forms:

== Contribution Policies

For detailed rules on branch naming, commit messages, and the PR process, please refer to the machine-readable manual at link:.github/CONTRIBUTING.md[CONTRIBUTING.adoc].
For detailed rules on branch naming, commit messages, and the PR process, please refer to the machine-readable manual at link:../.github/CONTRIBUTING.md[Contributing Guide].

== Code of Conduct

Expand Down
8 changes: 4 additions & 4 deletions editors/vscode/.github/workflows/rhodibot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# rhodibot.yml — Automated RSR compliance enforcement
#
# Reads root-hygiene rules and auto-fixes what it can:
# - Delete banned files (AI.djot, duplicate CONTRIBUTING.adoc, stale snapshots)
# - Delete banned files (AI.djot, duplicate ../../../../.github/CONTRIBUTING.md, stale snapshots)
# - Rename misnamed files (AI.a2ml → 0-AI-MANIFEST.a2ml)
# - Fix SPDX headers (AGPL → PMPL in dotfiles)
# - Create missing required files (SECURITY.md, CONTRIBUTING.md)
Expand Down Expand Up @@ -68,9 +68,9 @@ jobs:
fi

# --- 3. Delete duplicate format files ---
if [ -f "CONTRIBUTING.md" ] && [ -f "CONTRIBUTING.adoc" ]; then
rm CONTRIBUTING.adoc
FIXES="$FIXES\n- Deleted duplicate \`CONTRIBUTING.adoc\` (keeping .md for GitHub)"
if [ -f ".github/CONTRIBUTING.md" ] && [ -f "editors/vscode/.github/CONTRIBUTING.md" ]; then
rm editors/vscode/.github/CONTRIBUTING.md
FIXES="$FIXES\n- Deleted duplicate \`editors/vscode/.github/CONTRIBUTING.md\` (keeping \`.github/CONTRIBUTING.md\` for GitHub)"
CHANGED=true
fi

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ These are housekeeping items, not blockers.

### no-duplicate-contributing
- description: Only one CONTRIBUTING format (keep .md)
- run: "! (test -f CONTRIBUTING.md && test -f CONTRIBUTING.adoc)"
- run: "! (test -f CONTRIBUTING.md && test -f ../../.github/CONTRIBUTING.md)"
- severity: warning

### no-duplicate-readme
Expand Down
2 changes: 1 addition & 1 deletion editors/vscode/0-AI-MANIFEST.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ This repo follows the **Dual-Track** architecture:
├── 0-AI-MANIFEST.a2ml # THIS FILE (start here)
├── README.adoc # High-level orientation (Rich Human)
├── ROADMAP.adoc # Future direction
├── CONTRIBUTING.adoc # Human contribution guide
├── ../../.github/CONTRIBUTING.md # Human contribution guide
├── GOVERNANCE.adoc # Decision-making model
├── Justfile # Task runner
├── Containerfile # OCI build
Expand Down
2 changes: 1 addition & 1 deletion editors/vscode/CONTRIBUTING.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ We welcome contributions in many forms:

== Contribution Policies

For detailed rules on branch naming, commit messages, and the PR process, please refer to the machine-readable manual at link:.github/CONTRIBUTING.md[CONTRIBUTING.adoc].
For detailed rules on branch naming, commit messages, and the PR process, please refer to the machine-readable manual at link:.github/CONTRIBUTING.md[../../.github/CONTRIBUTING.md].

== Code of Conduct

Expand Down
2 changes: 1 addition & 1 deletion gleam/MAINTAINERS.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -62,4 +62,4 @@ For questions about project governance:

* link:GOVERNANCE.adoc[Governance Model]
* link:CODE_OF_CONDUCT.md[Code of Conduct]
* link:CONTRIBUTING.adoc[Contributing Guide]
* link:../.github/CONTRIBUTING.md[Contributing Guide]
8 changes: 4 additions & 4 deletions haskell/.github/workflows/rhodibot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# rhodibot.yml — Automated RSR compliance enforcement
#
# Reads root-hygiene rules and auto-fixes what it can:
# - Delete banned files (AI.djot, duplicate CONTRIBUTING.adoc, stale snapshots)
# - Delete banned files (AI.djot, duplicate ../../../.github/CONTRIBUTING.md, stale snapshots)
# - Rename misnamed files (AI.a2ml → 0-AI-MANIFEST.a2ml)
# - Fix SPDX headers (AGPL → PMPL in dotfiles)
# - Create missing required files (SECURITY.md, CONTRIBUTING.md)
Expand Down Expand Up @@ -68,9 +68,9 @@ jobs:
fi

# --- 3. Delete duplicate format files ---
if [ -f "CONTRIBUTING.md" ] && [ -f "CONTRIBUTING.adoc" ]; then
rm CONTRIBUTING.adoc
FIXES="$FIXES\n- Deleted duplicate \`CONTRIBUTING.adoc\` (keeping .md for GitHub)"
if [ -f ".github/CONTRIBUTING.md" ] && [ -f "haskell/.github/CONTRIBUTING.md" ]; then
rm haskell/.github/CONTRIBUTING.md
FIXES="$FIXES\n- Deleted duplicate \`haskell/.github/CONTRIBUTING.md\` (keeping \`.github/CONTRIBUTING.md\` for GitHub)"
CHANGED=true
fi

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ These are housekeeping items, not blockers.

### no-duplicate-contributing
- description: Only one CONTRIBUTING format (keep .md)
- run: "! (test -f CONTRIBUTING.md && test -f CONTRIBUTING.adoc)"
- run: "! (test -f CONTRIBUTING.md && test -f ../.github/CONTRIBUTING.md)"
- severity: warning

### no-duplicate-readme
Expand Down
2 changes: 1 addition & 1 deletion haskell/0-AI-MANIFEST.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ This repo follows the **Dual-Track** architecture:
├── 0-AI-MANIFEST.a2ml # THIS FILE (start here)
├── README.adoc # High-level orientation (Rich Human)
├── ROADMAP.adoc # Future direction
├── CONTRIBUTING.adoc # Human contribution guide
├── ../.github/CONTRIBUTING.md # Human contribution guide
├── GOVERNANCE.adoc # Decision-making model
├── Justfile # Task runner
├── Containerfile # OCI build
Expand Down
2 changes: 1 addition & 1 deletion haskell/CONTRIBUTING.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ We welcome contributions in many forms:

== Contribution Policies

For detailed rules on branch naming, commit messages, and the PR process, please refer to the machine-readable manual at link:.github/CONTRIBUTING.md[CONTRIBUTING.adoc].
For detailed rules on branch naming, commit messages, and the PR process, please refer to the machine-readable manual at link:../.github/CONTRIBUTING.md[../.github/CONTRIBUTING.md].

== Code of Conduct

Expand Down
2 changes: 1 addition & 1 deletion haskell/README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ See link:https://github.com/hyperpolymath/contractiles[contractiles documentatio

== Documentation

* link:CONTRIBUTING.adoc[Contributing Guide]
* link:../.github/CONTRIBUTING.md[Contributing Guide]
* link:GOVERNANCE.adoc[Governance Model]
* link:docs/attribution/MAINTAINERS.adoc[Maintainers & Citations]
* link:SECURITY.adoc[Security Policy]
Expand Down
2 changes: 1 addition & 1 deletion haskell/docs/accessibility/README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,7 @@ Burble is committed to:
* Supporting screen readers and other assistive technologies
* Continuous improvement based on user feedback

We welcome contributions to improve accessibility. See our link:../CONTRIBUTING.adoc[Contributing Guide] for details.
We welcome contributions to improve accessibility. See our link:../../../.github/CONTRIBUTING.md[Contributing Guide] for details.

== Related Documents

Expand Down
8 changes: 4 additions & 4 deletions pandoc/.github/workflows/rhodibot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# rhodibot.yml — Automated RSR compliance enforcement
#
# Reads root-hygiene rules and auto-fixes what it can:
# - Delete banned files (AI.djot, duplicate CONTRIBUTING.adoc, stale snapshots)
# - Delete banned files (AI.djot, duplicate ../../../.github/CONTRIBUTING.md, stale snapshots)
# - Rename misnamed files (AI.a2ml → 0-AI-MANIFEST.a2ml)
# - Fix SPDX headers (AGPL → PMPL in dotfiles)
# - Create missing required files (SECURITY.md, CONTRIBUTING.md)
Expand Down Expand Up @@ -68,9 +68,9 @@ jobs:
fi

# --- 3. Delete duplicate format files ---
if [ -f "CONTRIBUTING.md" ] && [ -f "CONTRIBUTING.adoc" ]; then
rm CONTRIBUTING.adoc
FIXES="$FIXES\n- Deleted duplicate \`CONTRIBUTING.adoc\` (keeping .md for GitHub)"
if [ -f ".github/CONTRIBUTING.md" ] && [ -f "pandoc/.github/CONTRIBUTING.md" ]; then
rm pandoc/.github/CONTRIBUTING.md
FIXES="$FIXES\n- Deleted duplicate \`pandoc/.github/CONTRIBUTING.md\` (keeping \`.github/CONTRIBUTING.md\` for GitHub)"
CHANGED=true
fi

Expand Down
2 changes: 1 addition & 1 deletion pandoc/.machine_readable/contractiles/dust/Dustfile.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ These are housekeeping items, not blockers.

### no-duplicate-contributing
- description: Only one CONTRIBUTING format (keep .md)
- run: "! (test -f CONTRIBUTING.md && test -f CONTRIBUTING.adoc)"
- run: "! (test -f CONTRIBUTING.md && test -f ../.github/CONTRIBUTING.md)"
- severity: warning

### no-duplicate-readme
Expand Down
2 changes: 1 addition & 1 deletion pandoc/0-AI-MANIFEST.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ This repo follows the **Dual-Track** architecture:
├── 0-AI-MANIFEST.a2ml # THIS FILE (start here)
├── README.adoc # High-level orientation (Rich Human)
├── ROADMAP.adoc # Future direction
├── CONTRIBUTING.adoc # Human contribution guide
├── ../.github/CONTRIBUTING.md # Human contribution guide
├── GOVERNANCE.adoc # Decision-making model
├── Justfile # Task runner
├── Containerfile # OCI build
Expand Down
2 changes: 1 addition & 1 deletion pandoc/CONTRIBUTING.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ We welcome contributions in many forms:

== Contribution Policies

For detailed rules on branch naming, commit messages, and the PR process, please refer to the machine-readable manual at link:.github/CONTRIBUTING.md[CONTRIBUTING.adoc].
For detailed rules on branch naming, commit messages, and the PR process, please refer to the machine-readable manual at link:../.github/CONTRIBUTING.md[../.github/CONTRIBUTING.md].

== Code of Conduct

Expand Down
Loading
Loading