Skip to content

Commit 4e393dd

Browse files
committed
chore: add root-allow.txt and sonar-project.properties
1 parent 70e8628 commit 4e393dd

2 files changed

Lines changed: 84 additions & 0 deletions

File tree

.machine_readable/root-allow.txt

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
# Canonical root allowlist for RSR-templated repositories.
2+
#
3+
# Lists every entry permitted at the repository root.
4+
# Anything tracked at root that is not in this list is drift and
5+
# must be moved into the appropriate subdirectory (or added here
6+
# with a justification comment).
7+
#
8+
# Used by: scripts/check-root-shape.sh
9+
# Authority: TEMPLATE-STANDARDS-AUDIT.adoc, "Proposed Final Directory Map"
10+
#
11+
# Format: one entry per line; '#' starts a comment; trailing '/' marks a directory.
12+
# Blank lines and comment-only lines are ignored.
13+
14+
# ─── Authority files (template-mandated) ─────────────────────────────────────
15+
README.adoc
16+
AUDIT.adoc
17+
EXPLAINME.adoc
18+
AFFIRMATION.adoc # dated/signed honesty snapshot (README/EXPLAINME/AFFIRMATION trio)
19+
0-AI-MANIFEST.a2ml # thin pointer to .machine_readable/0.1-AI-MANIFEST.a2ml
20+
GOVERNANCE.adoc # governance model (validator accepts root or docs/governance/)
21+
MAINTAINERS.adoc # maintainer roster
22+
CONTRIBUTING.md # Accepted at root OR .github/ — CI (openssf/quality/rhodibot) now checks both; .github/ is the canonical estate location (org-inherited). Allow-listed if present at root.
23+
SECURITY.md # Accepted at root OR .github/ — see CONTRIBUTING.md note above; security-policy contractile now accepts the .github/ copy.
24+
LICENSE
25+
LICENSES/ # REUSE licence texts (MPL-2.0.txt + CC-BY-SA-4.0.txt) for the dual-licence model (code MPL-2.0 / docs CC-BY-SA-4.0)
26+
CHANGELOG.md
27+
CITATION.cff # citation metadata (surfaced at root by #96)
28+
29+
# ─── Build entry points (must live at root for their tooling) ────────────────
30+
Justfile # delegates phases to build/just/*.just
31+
coordination.k9 # repo-local session binding (template-mandated)
32+
abi.ipkg # Idris2 package for the ABI seam; sourcedir=src/interface (estate canon: root-level *-abi.ipkg). Single case-consistent src/interface/Abi/ dir. Typecheck: `idris2 --typecheck abi.ipkg`.
33+
34+
# ─── Conventional dotfiles (tool-required at root) ───────────────────────────
35+
.editorconfig
36+
.envrc
37+
.gitattributes
38+
.gitignore
39+
.tool-versions
40+
CLAUDE.md # AI session instructions, generated by the arrival-pack from .machine_readable/ a2ml and read by agents at repo root (do not hand-edit; edit the a2ml source)
41+
.hypatia-ignore # repo-scoped Hypatia scanner exemptions; the scanner reads it from the repo root
42+
sonar-project.properties # SonarCloud analysis config; the SonarQube scan action reads it from the repo root
43+
44+
# ─── Directories ─────────────────────────────────────────────────────────────
45+
.devcontainer/ # VS Code dev container spec; tool-required at root
46+
.git/
47+
.github/ # CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md, workflows/
48+
.machine_readable/ # AI manifests, contractiles, custom-format configs
49+
.well-known/
50+
build/ # contractile.just, setup.sh, guix.scm, .guix-channel, Containerfile
51+
ci/ # .gitlab-ci.yml, .pre-commit-config.yaml (root shims if tools require)
52+
docs/ # onboarding/, status/, governance/, ...
53+
docs-template/ # template-only: scaffolding docs copied into new repos
54+
machine-readable-design/ # template-only: design rationale for .machine_readable/ layout
55+
session/ # dispatch.sh, custom-checks.k9, local-hooks.sh
56+
57+
# Source / test / artifact trees (project-specific but conventional)
58+
src/
59+
tests/
60+
benches/
61+
examples/
62+
features/
63+
scripts/
64+
verification/
65+
container/ # may host Containerfile if not at build/
66+
67+
# ─── Tolerated pending follow-up (re-evaluate when item lands) ───────────────
68+
.gitlab-ci.yml # TODO: relocate to ci/.gitlab-ci.yml after GitLab project-setting update
69+
.pre-commit-config.yaml # TODO: relocate to ci/.pre-commit-config.yaml after invocation pattern decided
70+
affinescript/ # AffineScript source subtree consumed by this template
71+
tools/ # TODO: consolidate with scripts/ or document the split (pending decision)

sonar-project.properties

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# SPDX-License-Identifier: MPL-2.0
2+
# SonarQube Cloud (SonarCloud) configuration.
3+
# Project: https://sonarcloud.io/project/overview?id=hyperpolymath_rsr-template-repo
4+
# Requires the SONAR_TOKEN repository secret + a SonarCloud project (owner setup).
5+
sonar.organization=hyperpolymath
6+
sonar.projectKey=hyperpolymath_rsr-template-repo
7+
8+
# Analysable surface = shell scripts + any JS/TS the template carries. Idris2,
9+
# Zig, Elixir and AffineScript have no SonarCloud analyser; vendored, generated,
10+
# build, proof, doc-template and dependency trees are excluded to keep findings
11+
# signal-rich (mirrors the boj-server arrangement).
12+
sonar.exclusions=build/**,container/**,generated/**,**/node_modules/**,**/_build/**,**/deps/**,**/.lake/**,verification/**,docs-template/**,machine-readable-design/**,**/*.idr,**/*.ipkg,**/*.zig
13+
sonar.coverage.exclusions=tests/**,**/*test*

0 commit comments

Comments
 (0)