|
| 1 | +<!-- |
| 2 | +SPDX-License-Identifier: CC-BY-SA-4.0 |
| 3 | +SPDX-FileCopyrightText: 2025-2026 Jonathan D.A. Jewell <j.d.a.jewell@open.ac.uk> |
| 4 | +--> |
| 5 | + |
| 6 | +[](https://www.bestpractices.dev/en/projects/new?repo_url=https://{{FORGE}}/{{OWNER}}/{{REPO}}) |
| 7 | +[](https://opensource.org/licenses/MPL-2.0) [](https://www.thegreenwebfoundation.org/green-web-check/?url={{FORGE}}) |
| 8 | + |
| 9 | +{{PROJECT_DESCRIPTION}} |
| 10 | + |
| 11 | +> [!IMPORTANT] |
| 12 | +> **This file is a template.** You are reading `README.adoc` from the |
| 13 | +> **RSR template repo** (or a freshly-cloned copy of it). Run `just` |
| 14 | +> `init` to replace every `{{PLACEHOLDER}}` token with your project’s |
| 15 | +> details, then delete this admonition. Until you do, the `{{…}}` |
| 16 | +> markers below are intentional placeholders, not content. |
| 17 | +
|
| 18 | +# What this is |
| 19 | + |
| 20 | +A new repository scaffolded from the **Rhodium Standard Repository |
| 21 | +(RSR)** template: a batteries-included starting point that ships with |
| 22 | +CI/CD, machine-readable project metadata, an AI-agent gatekeeper |
| 23 | +protocol, a formally-typed ABI/FFI seam (Idris2 + Zig), container and |
| 24 | +reproducible-build scaffolding, and governance infrastructure — all |
| 25 | +wired and passing the RSR validators on day one. |
| 26 | + |
| 27 | +Replace this section with a description of **your** project once |
| 28 | +initialised. |
| 29 | + |
| 30 | +# Quick start |
| 31 | + |
| 32 | +```bash |
| 33 | +# 1. Create a repo from this template (or clone it), then from the repo root: |
| 34 | +just init # interactive bootstrap: fills every {{PLACEHOLDER}} |
| 35 | + |
| 36 | +# 2. See the available tasks: |
| 37 | +just # lists all phases (build, test, validate, audit, ...) |
| 38 | + |
| 39 | +# 3. Check the repo still satisfies the RSR shape: |
| 40 | +just validate # structure + metadata checks |
| 41 | +``` |
| 42 | + |
| 43 | +`just` `init` prompts for the project name, owner, author, licence |
| 44 | +contact, and the other values listed in |
| 45 | +`.machine_readable/ai/PLACEHOLDERS.adoc`, substitutes them across the |
| 46 | +tree, validates the result, and (if available) runs the `k9-svc` checks. |
| 47 | + |
| 48 | +# What you get |
| 49 | + |
| 50 | +- **Machine-readable metadata** (`.machine_readable/6a2/`) — `STATE`, |
| 51 | + `META`, `ECOSYSTEM`, `PLAYBOOK`, `AGENTIC`, `NEUROSYM`, `CLADE`, and |
| 52 | + `anchors/ANCHOR`, in a2ml, so tools and agents can read the project’s |
| 53 | + state and boundaries. |
| 54 | + |
| 55 | +- **AI gatekeeper protocol** — `0-AI-MANIFEST.a2ml` is the universal |
| 56 | + entry point that tells an AI agent how to work in this repo before it |
| 57 | + touches anything. |
| 58 | + |
| 59 | +- **Typed ABI/FFI seam** — `src/interface/Abi/` (Idris2 type + layout |
| 60 | + proofs) over `src/interface/ffi/` (Zig implementation), with generated |
| 61 | + C headers. |
| 62 | + |
| 63 | +- **CI/CD** — GitHub Actions for quality, security (CodeQL, Scorecard, |
| 64 | + secret scanning), multi-forge mirroring, and RSR anti-pattern |
| 65 | + enforcement. |
| 66 | + |
| 67 | +- **Supply-chain & reproducibility** — container layering (stapeln), |
| 68 | + Nix/Guix shells, SBOM, and signing hooks. |
| 69 | + |
| 70 | +- **Governance** — `GOVERNANCE.adoc`, `MAINTAINERS.adoc`, `.github/` |
| 71 | + community health files, and a release `AUDIT.adoc` gate. |
| 72 | + |
| 73 | +# Repository map |
| 74 | + |
| 75 | +| Path | What lives there | |
| 76 | +|----|----| |
| 77 | +| `0-AI-MANIFEST.a2ml` | Universal entry point for AI agents (read first). | |
| 78 | +| `.machine_readable/` | Project metadata, policies, contractiles, AI configs. | |
| 79 | +| `src/interface/` | Typed ABI (Idris2) + FFI (Zig) + generated headers. | |
| 80 | +| `docs/` | Onboarding, status, governance, practice, decisions. | |
| 81 | +| `build/`, `Justfile` | Task orchestration (`just` phases delegate to `build/just/*.just`). | |
| 82 | +| `.github/` | Workflows + community health files. | |
| 83 | +| `tests/`, `benches/` | Test suites and benchmarks. | |
| 84 | + |
| 85 | +# Where to go next |
| 86 | + |
| 87 | +- `EXPLAINME.adoc` — the engineering deep-dive: how the pieces actually |
| 88 | + work. |
| 89 | + |
| 90 | +- `AFFIRMATION.adoc` — the dated, signed honesty snapshot of the repo’s |
| 91 | + true state. |
| 92 | + |
| 93 | +- `AUDIT.adoc` — the release audit gate. |
| 94 | + |
| 95 | +- `.machine_readable/ai/PLACEHOLDERS.adoc` — the full placeholder |
| 96 | + reference. |
| 97 | + |
| 98 | +# Licence |
| 99 | + |
| 100 | +Released under the [Mozilla Public License 2.0](LICENSE) unless a |
| 101 | +per-file `SPDX-License-Identifier` says otherwise. |
0 commit comments