diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..35f6190 --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,102 @@ +# Clone the repository + +git clone cd standards + +# Using Nix (recommended for reproducibility) + +nix develop + +# Or using toolbox/distrobox + +toolbox create standards-dev toolbox enter standards-dev \# Install +dependencies manually + +# Verify setup + +just check \# or: cargo check / mix compile / etc. just test \# Run test +suite + + + ### Repository Structure + +standards/ ├── src/ \# Source code (Perimeter 1-2) ├── lib/ \# Library +code (Perimeter 1-2) ├── extensions/ \# Extensions (Perimeter 2) ├── +plugins/ \# Plugins (Perimeter 2) ├── tools/ \# Tooling (Perimeter 2) +├── docs/ \# Documentation (Perimeter 3) │ ├── architecture/ \# ADRs, +specs (Perimeter 2) │ └── proposals/ \# RFCs (Perimeter 3) ├── examples/ +\# Examples (Perimeter 3) ├── spec/ \# Spec tests (Perimeter 3) ├── +tests/ \# Test suite (Perimeter 2-3) ├── .well-known/ \# Protocol files +(Perimeter 1-3) ├── .github/ \# GitHub config (Perimeter 1) │ ├── +ISSUE_TEMPLATE/ │ └── workflows/ ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md +├── CONTRIBUTING.md \# This file ├── GOVERNANCE.md ├── LICENSE ├── +MAINTAINERS.md ├── README.adoc ├── SECURITY.md ├── flake.nix \# Nix +flake (Perimeter 1) └── Justfile \# Task runner (Perimeter 1) + + + --- + + ## How to Contribute + + ### Reporting Bugs + + **Before reporting**: + 1. Search existing issues + 2. Check if it's already fixed in `main` + 3. Determine which perimeter the bug affects + + **When reporting**: + + Use the [bug report template](.github/ISSUE_TEMPLATE/bug_report.md) and include: + + - Clear, descriptive title + - Environment details (OS, versions, toolchain) + - Steps to reproduce + - Expected vs actual behaviour + - Logs, screenshots, or minimal reproduction + + ### Suggesting Features + + **Before suggesting**: + 1. Check the [roadmap](ROADMAP.md) if available + 2. Search existing issues and discussions + 3. Consider which perimeter the feature belongs to + + **When suggesting**: + + Use the [feature request template](.github/ISSUE_TEMPLATE/feature_request.md) and include: + + - Problem statement (what pain point does this solve?) + - Proposed solution + - Alternatives considered + - Which perimeter this affects + + ### Your First Contribution + + Look for issues labelled: + + - [`good first issue`](https://github.com/hyperpolymath/standards/labels/good%20first%20issue) — Simple Perimeter 3 tasks + - [`help wanted`](https://github.com/hyperpolymath/standards/labels/help%20wanted) — Community help needed + - [`documentation`](https://github.com/hyperpolymath/standards/labels/documentation) — Docs improvements + - [`perimeter-3`](https://github.com/hyperpolymath/standards/labels/perimeter-3) — Community sandbox scope + + --- + + ## Development Workflow + + ### Branch Naming + +docs/short-description \# Documentation (P3) test/what-added \# Test +additions (P3) feat/short-description \# New features (P2) +fix/issue-number-description \# Bug fixes (P2) refactor/what-changed \# +Code improvements (P2) security/what-fixed \# Security fixes (P1-2) + + + ### Commit Messages + + We follow [Conventional Commits](https://www.conventionalcommits.org/): + +(): + +\[optional body\] + +\[optional footer\] diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc deleted file mode 100644 index d16ec0c..0000000 --- a/CONTRIBUTING.adoc +++ /dev/null @@ -1,108 +0,0 @@ -== Clone the repository - -git clone https://github.com/hyperpolymath/standards.git cd standards - -== Using Nix (recommended for reproducibility) - -nix develop - -== Or using toolbox/distrobox - -toolbox create standards-dev toolbox enter standards-dev # Install -dependencies manually - -== Verify setup - -just check # or: cargo check / mix compile / etc. just test # Run test -suite - -.... - -### Repository Structure -.... - -standards/ ├── src/ # Source code (Perimeter 1-2) ├── lib/ # Library -code (Perimeter 1-2) ├── extensions/ # Extensions (Perimeter 2) ├── -plugins/ # Plugins (Perimeter 2) ├── tools/ # Tooling (Perimeter 2) ├── -docs/ # Documentation (Perimeter 3) │ ├── architecture/ # ADRs, specs -(Perimeter 2) │ └── proposals/ # RFCs (Perimeter 3) ├── examples/ # -Examples (Perimeter 3) ├── spec/ # Spec tests (Perimeter 3) ├── tests/ # -Test suite (Perimeter 2-3) ├── .well-known/ # Protocol files (Perimeter -1-3) ├── .github/ # GitHub config (Perimeter 1) │ ├── ISSUE_TEMPLATE/ │ -└── workflows/ ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── -CONTRIBUTING.md # This file ├── GOVERNANCE.md ├── LICENSE ├── -MAINTAINERS.md ├── README.adoc ├── SECURITY.md ├── flake.nix # Nix flake -(Perimeter 1) └── Justfile # Task runner (Perimeter 1) - -.... - ---- - -## How to Contribute - -### Reporting Bugs - -**Before reporting**: -1. Search existing issues -2. Check if it's already fixed in `main` -3. Determine which perimeter the bug affects - -**When reporting**: - -Use the [bug report template](.github/ISSUE_TEMPLATE/bug_report.md) and include: - -- Clear, descriptive title -- Environment details (OS, versions, toolchain) -- Steps to reproduce -- Expected vs actual behaviour -- Logs, screenshots, or minimal reproduction - -### Suggesting Features - -**Before suggesting**: -1. Check the [roadmap](ROADMAP.md) if available -2. Search existing issues and discussions -3. Consider which perimeter the feature belongs to - -**When suggesting**: - -Use the [feature request template](.github/ISSUE_TEMPLATE/feature_request.md) and include: - -- Problem statement (what pain point does this solve?) -- Proposed solution -- Alternatives considered -- Which perimeter this affects - -### Your First Contribution - -Look for issues labelled: - -- [`good first issue`](https://github.com/hyperpolymath/standards/labels/good%20first%20issue) — Simple Perimeter 3 tasks -- [`help wanted`](https://github.com/hyperpolymath/standards/labels/help%20wanted) — Community help needed -- [`documentation`](https://github.com/hyperpolymath/standards/labels/documentation) — Docs improvements -- [`perimeter-3`](https://github.com/hyperpolymath/standards/labels/perimeter-3) — Community sandbox scope - ---- - -## Development Workflow - -### Branch Naming -.... - -docs/short-description # Documentation (P3) test/what-added # Test -additions (P3) feat/short-description # New features (P2) -fix/issue-number-description # Bug fixes (P2) refactor/what-changed # -Code improvements (P2) security/what-fixed # Security fixes (P1-2) - -.... - -### Commit Messages - -We follow [Conventional Commits](https://www.conventionalcommits.org/): -.... - -(): - -{empty}[optional body] - -{empty}[optional footer] diff --git a/actions/validate/.github/workflows/rhodibot.yml b/actions/validate/.github/workflows/rhodibot.yml index 87dcad8..91d6c3f 100644 --- a/actions/validate/.github/workflows/rhodibot.yml +++ b/actions/validate/.github/workflows/rhodibot.yml @@ -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) @@ -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 "CONTRIBUTING.md" ] && [ -f "../../../../.github/CONTRIBUTING.md" ]; then + rm ../../../../.github/CONTRIBUTING.md + FIXES="$FIXES\n- Deleted duplicate \`../../../../.github/CONTRIBUTING.md\` (keeping .md for GitHub)" CHANGED=true fi diff --git a/actions/validate/.machine_readable/contractiles/dust/Dustfile.a2ml b/actions/validate/.machine_readable/contractiles/dust/Dustfile.a2ml index be38a8c..535b611 100644 --- a/actions/validate/.machine_readable/contractiles/dust/Dustfile.a2ml +++ b/actions/validate/.machine_readable/contractiles/dust/Dustfile.a2ml @@ -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 diff --git a/actions/validate/0-AI-MANIFEST.a2ml b/actions/validate/0-AI-MANIFEST.a2ml index 95640b0..4f95b86 100644 --- a/actions/validate/0-AI-MANIFEST.a2ml +++ b/actions/validate/0-AI-MANIFEST.a2ml @@ -90,7 +90,7 @@ a2ml-validate-action/ ├── 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 diff --git a/actions/validate/CONTRIBUTING.adoc b/actions/validate/CONTRIBUTING.adoc index a7cf861..7304ffd 100644 --- a/actions/validate/CONTRIBUTING.adoc +++ b/actions/validate/CONTRIBUTING.adoc @@ -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 diff --git a/bindings/deno/.github/workflows/rhodibot.yml b/bindings/deno/.github/workflows/rhodibot.yml index 87dcad8..91d6c3f 100644 --- a/bindings/deno/.github/workflows/rhodibot.yml +++ b/bindings/deno/.github/workflows/rhodibot.yml @@ -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) @@ -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 "CONTRIBUTING.md" ] && [ -f "../../../../.github/CONTRIBUTING.md" ]; then + rm ../../../../.github/CONTRIBUTING.md + FIXES="$FIXES\n- Deleted duplicate \`../../../../.github/CONTRIBUTING.md\` (keeping .md for GitHub)" CHANGED=true fi diff --git a/bindings/deno/.machine_readable/contractiles/dust/Dustfile.a2ml b/bindings/deno/.machine_readable/contractiles/dust/Dustfile.a2ml index be38a8c..535b611 100644 --- a/bindings/deno/.machine_readable/contractiles/dust/Dustfile.a2ml +++ b/bindings/deno/.machine_readable/contractiles/dust/Dustfile.a2ml @@ -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 diff --git a/bindings/deno/0-AI-MANIFEST.a2ml b/bindings/deno/0-AI-MANIFEST.a2ml index d8a1fa6..b2a1e7c 100644 --- a/bindings/deno/0-AI-MANIFEST.a2ml +++ b/bindings/deno/0-AI-MANIFEST.a2ml @@ -90,7 +90,7 @@ a2ml-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 diff --git a/bindings/deno/CONTRIBUTING.adoc b/bindings/deno/CONTRIBUTING.adoc index a7cf861..7304ffd 100644 --- a/bindings/deno/CONTRIBUTING.adoc +++ b/bindings/deno/CONTRIBUTING.adoc @@ -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 diff --git a/bindings/haskell/.github/workflows/rhodibot.yml b/bindings/haskell/.github/workflows/rhodibot.yml index 87dcad8..91d6c3f 100644 --- a/bindings/haskell/.github/workflows/rhodibot.yml +++ b/bindings/haskell/.github/workflows/rhodibot.yml @@ -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) @@ -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 "CONTRIBUTING.md" ] && [ -f "../../../../.github/CONTRIBUTING.md" ]; then + rm ../../../../.github/CONTRIBUTING.md + FIXES="$FIXES\n- Deleted duplicate \`../../../../.github/CONTRIBUTING.md\` (keeping .md for GitHub)" CHANGED=true fi diff --git a/bindings/haskell/.machine_readable/contractiles/dust/Dustfile.a2ml b/bindings/haskell/.machine_readable/contractiles/dust/Dustfile.a2ml index be38a8c..535b611 100644 --- a/bindings/haskell/.machine_readable/contractiles/dust/Dustfile.a2ml +++ b/bindings/haskell/.machine_readable/contractiles/dust/Dustfile.a2ml @@ -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 diff --git a/bindings/haskell/0-AI-MANIFEST.a2ml b/bindings/haskell/0-AI-MANIFEST.a2ml index dc12c57..313cb78 100644 --- a/bindings/haskell/0-AI-MANIFEST.a2ml +++ b/bindings/haskell/0-AI-MANIFEST.a2ml @@ -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 diff --git a/bindings/haskell/CONTRIBUTING.adoc b/bindings/haskell/CONTRIBUTING.adoc index a7cf861..7304ffd 100644 --- a/bindings/haskell/CONTRIBUTING.adoc +++ b/bindings/haskell/CONTRIBUTING.adoc @@ -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 diff --git a/bindings/haskell/README.adoc b/bindings/haskell/README.adoc index 34c0095..1bb5c23 100644 --- a/bindings/haskell/README.adoc +++ b/bindings/haskell/README.adoc @@ -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] diff --git a/bindings/rust/.github/workflows/rhodibot.yml b/bindings/rust/.github/workflows/rhodibot.yml index 87dcad8..91d6c3f 100644 --- a/bindings/rust/.github/workflows/rhodibot.yml +++ b/bindings/rust/.github/workflows/rhodibot.yml @@ -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) @@ -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 "CONTRIBUTING.md" ] && [ -f "../../../../.github/CONTRIBUTING.md" ]; then + rm ../../../../.github/CONTRIBUTING.md + FIXES="$FIXES\n- Deleted duplicate \`../../../../.github/CONTRIBUTING.md\` (keeping .md for GitHub)" CHANGED=true fi diff --git a/bindings/rust/.machine_readable/contractiles/dust/Dustfile.a2ml b/bindings/rust/.machine_readable/contractiles/dust/Dustfile.a2ml index be38a8c..535b611 100644 --- a/bindings/rust/.machine_readable/contractiles/dust/Dustfile.a2ml +++ b/bindings/rust/.machine_readable/contractiles/dust/Dustfile.a2ml @@ -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 diff --git a/bindings/rust/0-AI-MANIFEST.a2ml b/bindings/rust/0-AI-MANIFEST.a2ml index dc12c57..313cb78 100644 --- a/bindings/rust/0-AI-MANIFEST.a2ml +++ b/bindings/rust/0-AI-MANIFEST.a2ml @@ -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 diff --git a/bindings/rust/CONTRIBUTING.adoc b/bindings/rust/CONTRIBUTING.adoc index a7cf861..7304ffd 100644 --- a/bindings/rust/CONTRIBUTING.adoc +++ b/bindings/rust/CONTRIBUTING.adoc @@ -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 diff --git a/bindings/rust/README.adoc b/bindings/rust/README.adoc index 34c0095..1bb5c23 100644 --- a/bindings/rust/README.adoc +++ b/bindings/rust/README.adoc @@ -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] diff --git a/editors/vscode/.github/workflows/rhodibot.yml b/editors/vscode/.github/workflows/rhodibot.yml index 87dcad8..d270c2b 100644 --- a/editors/vscode/.github/workflows/rhodibot.yml +++ b/editors/vscode/.github/workflows/rhodibot.yml @@ -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) @@ -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 "editors/vscode/.github/CONTRIBUTING.md" ] && [ -f ".github/CONTRIBUTING.md" ]; then + rm editors/vscode/.github/CONTRIBUTING.md + FIXES="$FIXES\n- Deleted duplicate \`editors/vscode/.github/CONTRIBUTING.md\` (keeping root .github guide)" CHANGED=true fi diff --git a/editors/vscode/.machine_readable/contractiles/dust/Dustfile.a2ml b/editors/vscode/.machine_readable/contractiles/dust/Dustfile.a2ml index be38a8c..535b611 100644 --- a/editors/vscode/.machine_readable/contractiles/dust/Dustfile.a2ml +++ b/editors/vscode/.machine_readable/contractiles/dust/Dustfile.a2ml @@ -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 diff --git a/editors/vscode/0-AI-MANIFEST.a2ml b/editors/vscode/0-AI-MANIFEST.a2ml index dc12c57..313cb78 100644 --- a/editors/vscode/0-AI-MANIFEST.a2ml +++ b/editors/vscode/0-AI-MANIFEST.a2ml @@ -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 diff --git a/editors/vscode/CONTRIBUTING.adoc b/editors/vscode/CONTRIBUTING.adoc index a7cf861..7304ffd 100644 --- a/editors/vscode/CONTRIBUTING.adoc +++ b/editors/vscode/CONTRIBUTING.adoc @@ -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 diff --git a/pandoc/.github/workflows/rhodibot.yml b/pandoc/.github/workflows/rhodibot.yml index 87dcad8..ca048a8 100644 --- a/pandoc/.github/workflows/rhodibot.yml +++ b/pandoc/.github/workflows/rhodibot.yml @@ -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) @@ -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 "CONTRIBUTING.md" ] && [ -f "../../../.github/CONTRIBUTING.md" ]; then + rm ../../../.github/CONTRIBUTING.md + FIXES="$FIXES\n- Deleted duplicate \`../../../.github/CONTRIBUTING.md\` (keeping .md for GitHub)" CHANGED=true fi diff --git a/pandoc/.machine_readable/contractiles/dust/Dustfile.a2ml b/pandoc/.machine_readable/contractiles/dust/Dustfile.a2ml index be38a8c..aca2404 100644 --- a/pandoc/.machine_readable/contractiles/dust/Dustfile.a2ml +++ b/pandoc/.machine_readable/contractiles/dust/Dustfile.a2ml @@ -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 diff --git a/pandoc/0-AI-MANIFEST.a2ml b/pandoc/0-AI-MANIFEST.a2ml index dc12c57..6961e78 100644 --- a/pandoc/0-AI-MANIFEST.a2ml +++ b/pandoc/0-AI-MANIFEST.a2ml @@ -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 diff --git a/pandoc/CONTRIBUTING.adoc b/pandoc/CONTRIBUTING.adoc index a7cf861..5e05eae 100644 --- a/pandoc/CONTRIBUTING.adoc +++ b/pandoc/CONTRIBUTING.adoc @@ -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