diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..312d9ef --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,88 @@ + +# Getting started +```bash +git clone https://github.com/hyperpolymath/kaldor-iiot.git +cd kaldor-iiot + +# 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/kaldor-iiot/labels/good%20first%20issue) — Simple Perimeter 3 tasks +- [`help wanted`](https://github.com/hyperpolymath/kaldor-iiot/labels/help%20wanted) — Community help needed +- [`documentation`](https://github.com/hyperpolymath/kaldor-iiot/labels/documentation) — Docs improvements +- [`perimeter-3`](https://github.com/hyperpolymath/kaldor-iiot/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 3af9411..c32d28b 100644 --- a/QUICKSTART-MAINTAINER.adoc +++ b/QUICKSTART-MAINTAINER.adoc @@ -32,7 +32,7 @@ Output: `{{BUILD_OUTPUT_PATH}}` [source,bash] ---- -guix build -f guix.scm +guix build -f build/guix.scm ---- === Nix diff --git a/README.adoc b/README.adoc index 17484c4..38d36e8 100644 --- a/README.adoc +++ b/README.adoc @@ -134,7 +134,7 @@ deno run scripts/governance/vote.ts \ |Community standards + TPCF |✅ Complete -|link:CONTRIBUTING.adoc[CONTRIBUTING.adoc] +|link:.github/CONTRIBUTING.md[.github/CONTRIBUTING.md] |Contribution guide with TPCF perimeters |⚠️ In Progress @@ -187,7 +187,7 @@ Kaldor-IIoT/ ├── LICENSE.txt # Palimpsest v0.8 ├── SECURITY.md # Security policy ├── CODE_OF_CONDUCT.md # Community standards -├── CONTRIBUTING.adoc # Contribution guide +├── .github/CONTRIBUTING.md # Contribution guide ├── GOVERNANCE.adoc # Governance model └── MAINTAINERS.md # TPCF perimeter assignments ---- @@ -240,7 +240,7 @@ SPDX-License-Identifier: CC-BY-SA-4.0 == Contributing -We welcome contributions from all 3 TPCF perimeters! See link:CONTRIBUTING.adoc[CONTRIBUTING.adoc] for: +We welcome contributions from all 3 TPCF perimeters! See link:.github/CONTRIBUTING.md[.github/CONTRIBUTING.md] for: * Perimeter 1 (Core): Consensus voting for critical changes * Perimeter 2 (Expert): 2-approval model for features diff --git a/docs/accessibility/README.adoc b/docs/accessibility/README.adoc index de58834..5ce4633 100644 --- a/docs/accessibility/README.adoc +++ b/docs/accessibility/README.adoc @@ -244,7 +244,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 diff --git a/guix.scm b/guix.scm deleted file mode 100644 index 0689a3d..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 "kaldor-iiot") - (version "0.1.0") - (source #f) - (build-system gnu-build-system) - (inputs (list coreutils bash make openjdk rust cmake zig go node python)) - (synopsis "kaldor-iiot") - (description "kaldor-iiot — part of the hyperpolymath ecosystem.") - (home-page "https://github.com/hyperpolymath/kaldor-iiot") - (license ((@@ (guix licenses) license) "MPL-2.0" "https://github.com/hyperpolymath/palimpsest-license")))