From dc27eb2a9a30b73373842c298c8b118c9836bcc4 Mon Sep 17 00:00:00 2001 From: "Jonathan D.A. Jewell" <6759885+hyperpolymath@users.noreply.github.com> Date: Tue, 21 Jul 2026 06:27:03 +0100 Subject: [PATCH 1/2] chore(governance): add flake.nix for standards#505 gates --- flake.nix | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 flake.nix diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..301d924 --- /dev/null +++ b/flake.nix @@ -0,0 +1,34 @@ +# SPDX-License-Identifier: MPL-2.0 +# SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell +# +# Development environment for coord-tui. +# +# Estate policy is Guix primary / Nix fallback (hyperpolymath/standards). +# This is the Nix fallback tier. It is a dev shell, not a package build: +# it declares the toolchain needed to work on this repo, pinned to an +# exact nixpkgs revision per the estate SHA-pinning rule. +# +# Packages mirror the build tooling actually present in this repo +# (just rust) — not a generic estate default. +# +# nix develop # enter the shell +# nix flake check # verify this file evaluates (run before committing) +{ + description = "coord-tui development environment"; + + inputs.nixpkgs.url = "github:NixOS/nixpkgs/b134951a4c9f3c995fd7be05f3243f8ecd65d798"; + + outputs = { self, nixpkgs }: + let + systems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; + forAllSystems = f: + nixpkgs.lib.genAttrs systems (system: f nixpkgs.legacyPackages.${system}); + in + { + devShells = forAllSystems (pkgs: { + default = pkgs.mkShell { + packages = with pkgs; [ just cargo rustc rustfmt clippy ]; + }; + }); + }; +} From 19b200f8d66d7bd4088bc7d7bd67f9f3a1952f3b Mon Sep 17 00:00:00 2001 From: "Jonathan D.A. Jewell" <6759885+hyperpolymath@users.noreply.github.com> Date: Tue, 21 Jul 2026 06:27:04 +0100 Subject: [PATCH 2/2] chore(governance): add CONTRIBUTING.md for standards#505 gates --- CONTRIBUTING.md | 72 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..fc7e3fd --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,72 @@ + + + +# Contributing to coord-tui + +Thanks for your interest. This repository follows the Hyperpolymath estate +standards defined in [hyperpolymath/standards](https://github.com/hyperpolymath/standards). + +## Licence + +This project is licensed under **MPL-2.0**. By contributing you agree that +your contributions are licensed under the same terms. Every source file +carries an `SPDX-License-Identifier` header; keep it when editing, and add +one to any new file. + +## Development environment + +A pinned dev shell is provided: + +```sh +nix develop # toolchain: just cargo rustc rustfmt clippy +``` + +Estate policy is Guix primary / Nix fallback; this repo currently ships the +Nix fallback. A `guix.scm` is welcome if you prefer the primary tier. + +## Build and test + +This repo uses [`just`](https://just.systems) (the estate uses Justfiles, +never Makefiles). Recipes available here: + +```sh +just # list recipes +just fmt # format +just fmt-check # check formatting +just lint # lint +just test-all # run the full suite +just doctor # environment diagnostics +``` + +## Machine-readable artefacts + +This repo carries `.machine_readable/` A2ML files (`STATE.a2ml`, +`META.a2ml`, `ECOSYSTEM.a2ml`, `AGENTIC.a2ml`, `NEUROSYM.a2ml`, +`PLAYBOOK.a2ml`). If your change alters project state, architecture, or +operational steps, update the corresponding file in the same PR — CI +validates them. + +## Language policy + +The estate restricts which languages may be used. In particular Python, Go, +TypeScript, ReScript, V-lang, Java/Kotlin, Swift and Makefiles are **not** +accepted in new code; AffineScript, Rust/SPARK, Zig, Deno, Gleam, Elixir, +Haskell, Idris2, Agda, Julia and OCaml are. CI enforces this, so check the +policy in `hyperpolymath/standards` before introducing a new language. + +## Documentation format + +Docs are AsciiDoc (`.adoc`) by default, including `README.adoc`. The +GitHub-required community-health files stay Markdown: `SECURITY.md`, +`CONTRIBUTING.md`, `CODE_OF_CONDUCT.md`, `CHANGELOG.md`. Do not add a `.md` +duplicate of a doc that already exists as `.adoc`. + +## Pull requests + +1. Branch from `main` — do not push to `main` directly; branch protection + requires review and passing checks. +2. Keep the change focused, and explain *why* in the PR body. +3. Make sure governance CI is green. It checks documentation presence, + packaging policy, secrets, licence consistency and workflow security. +4. Security issues: follow `SECURITY.md` — report privately, never in a + public issue.