From 644c33996d066a26b572f15d6cf234fa96be71dd Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 20 Jun 2026 07:26:16 +0000 Subject: [PATCH] chore(rsr): declare capability profile (rsr-profile.a2ml, preset rust-cli) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The worked example for the estate template-applicability policy (hyperpolymath/standards#391). Declares arghda-core's capabilities (preset rust-cli: rust, cli, library) with a [rationale] block recording why it declines the maximal template's gated modules — no ABI/FFI seam, no in-tree proofs (it *consumes* Agda but contains none), no container, no AffineScript, and not governance-tier. This formalises the lean shape arghda-core already ships: the reference checker (standards scripts/check-rsr-profile.sh) reports OK against it, and flags a planted abi.ipkg / container/ as VESTIGIAL. STATE.a2ml updated to point at standards#391; CI wiring of the checker is a follow-up once that lands. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_019GiSiEfgZCte35dyykgBHs --- .machine_readable/6a2/STATE.a2ml | 2 +- .machine_readable/rsr-profile.a2ml | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 .machine_readable/rsr-profile.a2ml diff --git a/.machine_readable/6a2/STATE.a2ml b/.machine_readable/6a2/STATE.a2ml index 195925b..ee53bcf 100644 --- a/.machine_readable/6a2/STATE.a2ml +++ b/.machine_readable/6a2/STATE.a2ml @@ -40,7 +40,7 @@ milestones = [ [critical-next-actions] actions = [ - "Formalise template-applicability rules (capability-gated RSR profile: carry a template module iff the repo declares the capability it serves) — estate-wide, candidate for hyperpolymath/standards", + "Template-applicability: rsr-profile.a2ml declares preset rust-cli (landed); estate policy + gate model + reference checker filed in hyperpolymath/standards#391. Follow-up: wire scripts/check-rsr-profile.sh into CI once standards#391 lands.", "Extend content-hash invalidation to cover transitive imports (needs include-root tracking)", "Serve /.well-known/groove for PanLL discovery (Groove protocol)", "Scaffold arghda-studio (AffineScript visual layer consuming the dag JSON)", diff --git a/.machine_readable/rsr-profile.a2ml b/.machine_readable/rsr-profile.a2ml new file mode 100644 index 0000000..ac23c1e --- /dev/null +++ b/.machine_readable/rsr-profile.a2ml @@ -0,0 +1,24 @@ +# SPDX-License-Identifier: MPL-2.0 +# Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) +# +# rsr-profile.a2ml — RSR template-applicability profile for arghda-core. +# +# Declares which template capabilities this repo has, so its scaffold can be +# checked against the gate model instead of a fixed "one shape fits all". +# Policy: hyperpolymath/standards TEMPLATE-APPLICABILITY-POLICY.adoc +# Data: hyperpolymath/standards .machine_readable/template-capability-gates.toml +# Checker: hyperpolymath/standards scripts/check-rsr-profile.sh + +[profile] +preset = "rust-cli" +add = [] # extra capabilities beyond the preset +remove = [] # preset capabilities this repo does NOT have + +[rationale] +# Why arghda-core declines the maximal template's gated modules: +no-abi = "language-agnostic engine; no C-ABI/FFI seam, no Idris2 ABI proofs (no abi.ipkg / src/interface/)" +no-formal-proofs = "consumes Agda — shells out to agda / agda-unused — but contains no in-tree proofs (no verification/proofs/)" +no-container = "ships a CLI binary, not a container image" +no-reproducible-build = "cargo build only for now; guix.scm / flake.nix are a future addition, not present" +no-affinescript = "pure Rust; the planned AffineScript visual layer is a separate repo (arghda-studio)" +no-governance-tier = "leaf tool; declines the full AUDIT / AFFIRMATION / GOVERNANCE / MAINTAINERS trio"