Skip to content

Commit 645a80e

Browse files
Claude/repo tidy rsr taxonomy (#149)
## Summary Repo-health tidy aligning boj-server's documentation taxonomy with `hyperpolymath/rsr-template-repo`. The root went from 17 .md/.adoc docs to **9** (all of which are either GitHub-required, load-bearing, or known high-coupling items deferred for separate work); `docs/` now has audience-targeted subdirectories matching the template (`quickstarts/`, `wikis/`, `architecture/`, `status/`, `developer/`); and every non-GitHub-required `.md` doc in the moved set is now `.adoc` per the hyperpolymath language policy. ## Changes — six logical commits **1. `docs(taxonomy): move root .adoc docs under docs/<category>/`** — 8 root `.adoc` files relocated: - `EXPLAINME.adoc` → `docs/EXPLAINME.adoc` - `BOJ_LOGIC.adoc`, `NeSy_SERVERS.adoc` → `docs/architecture/` - `FUTURE_PLANS.adoc`, `ROADMAP.adoc` → `docs/status/` - `QUICKSTART-{USER,DEV,MAINTAINER}.adoc` → `docs/quickstarts/{USER,DEV,MAINTAINER}.adoc` Cross-refs updated in `0-AI-MANIFEST.a2ml`, `Justfile`, `elixir/boj-rest.service`, `.machine_readable/agent_instructions/methodology.a2ml`, `docs/README.adoc`, `docs/accessibility/README.adoc`, and the two `outreach/` drafts. **2. `docs(readme): merge README.md into README.adoc, drop the .md duplicate`** — the substantive 518-line `README.md` (11-client install matrix, collapsible cartridge tables, AAA section) converted to AsciiDoc and merged with the unique sections from the shorter `.adoc` (Features bullets, Formal verification). `README.md` deleted. Refs in `jsr.json`, `mcp-bridge/lib/resources.js`, `.github/SECURITY.md`, and `Intentfile` repointed at `README.adoc`. **3. `docs(taxonomy): convert wiki/llm-warmup/Phase-3B docs to .adoc and re-home them`** — five wiki pages converted and moved from `docs/wiki/` to `docs/wikis/` (template's spelling); `llm-warmup-{dev,user}.md` moved into `docs/developer/`; `CARTRIDGE-PHASE-3B-COMPLETION.md` moved into `docs/status/`. Also drift-fixed `STATE.a2ml`'s stale cartridge counts (`112 → 125`, derived from actual directory count). **4. `docs(taxonomy): convert docs/*.md to .adoc, relocate ARCHITECTURE+DEVELOPERS, add subdir READMEs`** — 8 `docs/*.md` files converted to `.adoc`; `docs/ARCHITECTURE.md` → `docs/architecture/README.adoc`; `docs/DEVELOPERS.md` → `docs/developer/README.adoc`. **99 files cross-rewritten** (55 cartridge READMEs + governance/wiki/dev/architecture refs + `Justfile`, `.github/copilot-instructions.md`, `SECURITY.md`, `src/abi/Boj/Catalogue.idr`, `k8s/service.yaml`, `mcp-bridge/lib/api-clients.js`, etc.). New subdir orientation READMEs in `docs/quickstarts/`, `docs/status/`, `docs/wikis/`. **5. `docs(quickstarts): replace stub DEV/MAINTAINER with the substantial docs/*.md content`** — the substantive `docs/QUICKSTART.md` (72 lines), `docs/GETTING-STARTED.md` (198 lines), and `docs/OPERATOR-QUICKSTART.md` (296 lines) replace the 39/40-line stubs that had moved over from root in commit 1. Result: `docs/quickstarts/{USER, DEV, BUILD-FROM-SOURCE, MAINTAINER}.adoc`. **6. `docs(index): comprehensive docs/README.adoc rewrite + final TYPED-WASM-MCP-BRIDGE conversion`** — `docs/README.adoc` rewritten in full (four sections: "Reading order by audience", "Directory taxonomy", "Standalone `docs/` root files", "Related root-level files"). Last lone `.md` in `docs/architecture/` converted. ## Known-deferred (not in this PR — high coupling) These four root-level files are intentionally left in place because moving them would ripple across 5–16+ files including CI workflows, Idris2 proofs, and Elixir test fixtures: - `PROOF-NEEDS.md` (16 cross-refs, incl. `.github/workflows/backend-assurance.yml`, `src/abi/Boj/SafetyLemmas.idr`, 4 Elixir test files) - `TOPOLOGY.md` (11 cross-refs, incl. a CI workflow) - `TEST-NEEDS.md` (5 cross-refs) - `GEMINI.md` — *not* deferred; it's load-bearing (`gemini-extension.json` references it as `contextFileName`) A follow-up PR can address the first three with a careful bulk-rewrite once these moves are accepted. ## Issues + PRs Verified all 6 open issues (#135, #111, #101, #100, #87, #67) are current — most recently updated 2026-05-20. No stale issues require closing. ## Cartridge-count drift `.machine_readable/6a2/STATE.a2ml` had `cartridges-total = 112` but the actual count is **125** (every cartridge directory has `cartridge.json`). Bumped: `cartridges-total 112 → 125`, `cartridges-with-zig-ffi 111 → 115` (manifest-counted), `cartridges-with-js-mod 111 → 113`, and the prose in `[project-context].purpose`. ## Test plan - [x] All cross-references rewritten in the same commits as the file moves (no dangling links). Verified via `git grep -l <old-path>` returning 0 for every moved file. - [x] CHANGELOG.md and historical log entries inside `.machine_readable/6a2/STATE.a2ml` deliberately left intact (rewriting history obscures the audit trail). - [ ] CI is freshly running (26 checks queued from this push). - [ ] Reviewer spot-check: `docs/README.adoc` index accurately reflects the on-disk taxonomy. - [ ] Reviewer spot-check: at least one cartridge README (e.g. `cartridges/aerie-mcp/README.adoc`) still links cleanly to `docs/READINESS.adoc`. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude <noreply@anthropic.com>
1 parent ad3224c commit 645a80e

137 files changed

Lines changed: 5136 additions & 3322 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/DISCUSSION_TEMPLATE/cartridge-proposal.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ body:
66
value: |
77
Proposing a new cartridge for the Ayo (community) menu? Tell us about it!
88
Cartridges follow the stack: Idris2 ABI + Zig FFI, served by the Elixir adapter.
9-
See docs/DEVELOPERS.md for the full guide.
9+
See docs/developer/README.adoc for the full guide.
1010
- type: input
1111
attributes:
1212
label: Cartridge name

.github/SECURITY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -364,7 +364,7 @@ When using boj-server, we recommend:
364364
|---------|---------|
365365
| **Security issues** | [Report via GitHub](https://github.com/hyperpolymath/boj-server/security/advisories/new) or j.d.a.jewell@open.ac.uk |
366366
| **General questions** | [GitHub Discussions](https://github.com/hyperpolymath/boj-server/discussions) |
367-
| **Other enquiries** | See [README](README.md) for contact information |
367+
| **Other enquiries** | See [README](../README.adoc) for contact information |
368368

369369
---
370370

.github/copilot-instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<!-- SPDX-License-Identifier: MPL-2.0 -->
22
<!-- Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk> -->
3-
<!-- Authoritative source: docs/AI-CONVENTIONS.md -->
3+
<!-- Authoritative source: docs/AI-CONVENTIONS.adoc -->
44

55
# Copilot Instructions
66

.machine_readable/6a2/STATE.a2ml

Lines changed: 5 additions & 4 deletions
Large diffs are not rendered by default.

.machine_readable/agent_instructions/methodology.a2ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,4 +104,4 @@ constraints = [
104104
reject-if-contains = ["{{PLACEHOLDER}}", "{{PROJECT}}", "rsr-template-repo"]
105105
reject-if-project-name-mismatch = true
106106
staleness-threshold-days = 90
107-
fallback-files = ["TODO.md", "TODO.adoc", "ROADMAP.adoc", "README.adoc"]
107+
fallback-files = ["TODO.md", "TODO.adoc", "docs/status/ROADMAP.adoc", "README.adoc"]

.machine_readable/servers/menu.a2ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@
299299
@section(id="ayo", label="The Ayo Selection"):
300300

301301
# No community cartridges yet — the door is open.
302-
# See docs/DEVELOPERS.md for how to contribute a cartridge.
302+
# See docs/developer/README.adoc for how to contribute a cartridge.
303303

304304
# ═══════════════════════════════════════════════════════════════════════════
305305
# Umoja Network (Community Nodes)

0-AI-MANIFEST.a2ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828

2929
(context-tiers
3030
; Tier 0 (always load): This file + .claude/CLAUDE.md — orientation only
31-
; Tier 1 (load if working on code): README.adoc, EXPLAINME.adoc, Justfile
31+
; Tier 1 (load if working on code): README.adoc, docs/EXPLAINME.adoc, Justfile
3232
; Tier 2 (load on demand): .machine_readable/*.a2ml, docs/
3333
; Tier 3 (never load unless asked): tests/, generated/, CI configs
3434
;

CARTRIDGE-PHASE-3B-COMPLETION.md

Lines changed: 0 additions & 186 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,45 @@ All notable changes to Bundle of Joy Server are documented here.
2727

2828
## [Unreleased]
2929

30+
### Documentation
31+
32+
- **Repository documentation reorganised to match rsr-template-repo taxonomy.**
33+
Root-level `.adoc` clutter eliminated; all docs now live under `docs/`
34+
subdirectories clustered by purpose (`quickstarts/`, `wikis/`, `architecture/`,
35+
`status/`, `developer/`, `governance/`, `decisions/`, `specification/`,
36+
`integration/`, `backend-assurance/`, `compliance/`, `practice/`,
37+
`proposals/`, `attribution/`, `accessibility/`, `papers/`, `examples/`,
38+
`glama/`, `outreach/`, `handover/`, `maintenance/`). Each subdirectory has
39+
its own `README.adoc` index. High-coupling root files (`PROOF-NEEDS.md`,
40+
`TOPOLOGY.md`, `TEST-NEEDS.md`) stay at root pending follow-up PR to update
41+
their 16/11/5 cross-references.
42+
43+
- **`README.md` merged into `README.adoc` and dropped.** Single canonical
44+
root README in AsciiDoc. Preserves the full 11-client MCP install matrix
45+
(Claude Code, Claude Desktop, Gemini CLI, Copilot, Cursor, Cline, Windsurf,
46+
Continue.dev, Zed, generic stdio) and collapsible cartridge tables via
47+
`[%collapsible]` blocks.
48+
49+
- **All `docs/*.md` files converted to `.adoc`** (format only; content
50+
preserved). Affected files: `ARCHITECTURE.md``docs/architecture/README.adoc`,
51+
`DEVELOPERS.md``docs/developer/README.adoc`, `OPERATOR-QUICKSTART.md`
52+
`docs/quickstarts/MAINTAINER.adoc`, `DEVELOPER-QUICKSTART.md`
53+
`docs/quickstarts/DEV.adoc`, and 8 others. `docs/wikis/` sources fully
54+
converted and expanded (Home, User-Guide, Operator-Guide, Developer-Guide,
55+
FAQ all in `.adoc`).
56+
57+
- **`docs/README.adoc` rewritten** with reading-order-by-audience table,
58+
full directory taxonomy, standalone-docs table, and rationale for the three
59+
high-coupling deferred moves.
60+
61+
- **New subdir index files**: `docs/quickstarts/README.adoc`,
62+
`docs/wikis/README.adoc`, `docs/status/README.adoc` — each explains its
63+
subdirectory's scope and contents.
64+
65+
- **STATE.a2ml cartridge count corrected**: was 112, actual is 125 (verified
66+
by `find cartridges -name cartridge.json | wc -l`). Session log entry added
67+
documenting all 2026-05-26 work.
68+
3069
### Changed
3170

3271
- **Cowboy listener now binds to `127.0.0.1` by default** (was: all

Containerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
# cartridge tool manifest.
66
#
77
# TRANSITIONAL: this image will be replaced by a Zig→WASM bridge once
8-
# typed-wasm-mcp lands. See docs/architecture/TYPED-WASM-MCP-BRIDGE.md.
8+
# typed-wasm-mcp lands. See docs/architecture/TYPED-WASM-MCP-BRIDGE.adoc.
99
#
1010
# For the full production image (Zig FFI + adapter), use:
1111
# podman build -f container/Containerfile .

0 commit comments

Comments
 (0)