From 002719713534caf7556202e33fe2780030ef150b Mon Sep 17 00:00:00 2001 From: "Jonathan D.A. Jewell" <6759885+hyperpolymath@users.noreply.github.com> Date: Sat, 19 Sep 2026 09:36:30 +0000 Subject: [PATCH] refactor(root): move root artefacts to their canonical locations Applies the estate root-shape rollout: files that are not root-level by necessity move to where their tooling and the estate canon expect them, and every reference to them is updated in the same change. * .machine_readable/root-allow.txt * QUICKSTART-MAINTAINER.adoc * build/guix.scm (from guix.scm) -> build/guix.scm * .github/CONTRIBUTING.md (new) * CONTRIBUTING.adoc (deleted) * scripts/rsr-verify.sh Verified with `git apply --check` against current main before committing; no behaviour change intended, the Justfile entry points keep working. --- .github/CONTRIBUTING.md | 88 ++++++++++++++++++++++++++++++++ .machine_readable/root-allow.txt | 1 + CONTRIBUTING.adoc | 3 -- QUICKSTART-MAINTAINER.adoc | 2 +- guix.scm | 28 ---------- scripts/rsr-verify.sh | 2 +- 6 files changed, 91 insertions(+), 33 deletions(-) create mode 100644 .github/CONTRIBUTING.md delete mode 100644 CONTRIBUTING.adoc delete mode 100644 guix.scm diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..1ca53e5 --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,88 @@ + +# Getting started +```bash +git clone https://github.com/hyperpolymath/resource-record-fluctuator.git +cd resource-record-fluctuator + +# Using mise (recommended: provision the pinned toolchain) +mise install + +# Task runner (see Justfile) +just --list # available tasks +just check # verify setup / static checks +just test # run the test suite +``` + +--- + +## 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](../docs/status/ROADMAP.adoc) 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/resource-record-fluctuator/labels/good%20first%20issue) — Simple Perimeter 3 tasks +- [`help wanted`](https://github.com/hyperpolymath/resource-record-fluctuator/labels/help%20wanted) — Community help needed +- [`documentation`](https://github.com/hyperpolymath/resource-record-fluctuator/labels/documentation) — Docs improvements +- [`perimeter-3`](https://github.com/hyperpolymath/resource-record-fluctuator/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/.machine_readable/root-allow.txt b/.machine_readable/root-allow.txt index ceb2b98..3b3fccb 100644 --- a/.machine_readable/root-allow.txt +++ b/.machine_readable/root-allow.txt @@ -1 +1,2 @@ CLAUDE.md +build/ # build orchestration: guix.scm relocated here (canon 1.2.1 guix-primary template_ref = "build/") diff --git a/CONTRIBUTING.adoc b/CONTRIBUTING.adoc deleted file mode 100644 index dab29bd..0000000 --- a/CONTRIBUTING.adoc +++ /dev/null @@ -1,3 +0,0 @@ -== Contributing - -See CONTRIBUTING.adoc for full contribution guidelines. diff --git a/QUICKSTART-MAINTAINER.adoc b/QUICKSTART-MAINTAINER.adoc index 4ea6880..88d0605 100644 --- a/QUICKSTART-MAINTAINER.adoc +++ b/QUICKSTART-MAINTAINER.adoc @@ -31,7 +31,7 @@ Output: `{{BUILD_OUTPUT_PATH}}` [source,bash] ---- -guix build -f guix.scm +guix build -f build/guix.scm ---- === Nix diff --git a/guix.scm b/guix.scm deleted file mode 100644 index 6f8685a..0000000 --- a/guix.scm +++ /dev/null @@ -1,28 +0,0 @@ -;; SPDX-License-Identifier: MPL-2.0 -;; Guix development environment. -;; Usage: guix shell -D -f guix.scm - -(use-modules (guix packages) - (guix build-system gnu) - (guix licenses) - (gnu packages base) - (gnu packages bash) - (gnu packages base) - (gnu packages java) - (gnu packages rust) - (gnu packages cmake) - (gnu packages zig) - (gnu packages golang) - (gnu packages node) - (gnu packages python)) - -(package - (name "resource-record-fluctuator") - (version "0.1.0") - (source #f) - (build-system gnu-build-system) - (inputs (list coreutils bash make openjdk rust cmake zig go node python)) - (synopsis "resource-record-fluctuator") - (description "resource-record-fluctuator — part of the hyperpolymath ecosystem.") - (home-page "https://github.com/hyperpolymath/resource-record-fluctuator") - (license ((@@ (guix licenses) license) "MPL-2.0" "https://github.com/hyperpolymath/palimpsest-license"))) diff --git a/scripts/rsr-verify.sh b/scripts/rsr-verify.sh index 70108c2..2535101 100755 --- a/scripts/rsr-verify.sh +++ b/scripts/rsr-verify.sh @@ -89,7 +89,7 @@ echo "" echo "📊 Category 3: Documentation (10 points)" check "README.adoc exists" "[ -f README.adoc ]" 1 "Documentation" check "SECURITY.adoc exists" "[ -f SECURITY.adoc ]" 2 "Documentation" -check "CONTRIBUTING.adoc exists" "[ -f CONTRIBUTING.adoc ]" 2 "Documentation" +check "../.github/CONTRIBUTING.md exists" "[ -f ../.github/CONTRIBUTING.md ]" 2 "Documentation" check "CODE_OF_CONDUCT.adoc exists" "[ -f CODE_OF_CONDUCT.adoc ]" 2 "Documentation" check "MAINTAINERS.adoc exists" "[ -f MAINTAINERS.adoc ]" 1 "Documentation" check "CHANGELOG.adoc exists" "[ -f CHANGELOG.adoc ]" 2 "Documentation"