Skip to content

Commit 4a87691

Browse files
chore(rsr): replace 16 stale vendored .claude/CLAUDE.md duplicates with pointer to canonical (#169)
## Why The RSR satellites carry 16 \`.claude/CLAUDE.md\` files snapshotted at 2025-11-22 — a copy of the canonical \`.claude/CLAUDE.md\` from a date when the policy was different. They still list: - ReScript as the primary language (banned in new code 2026-04-30) - GitLab as the source-of-truth host (estate is on GitHub) - Python-only-for-SaltStack (Python is fully banned since 2026-01-03) - RVC (Robot Vacuum Cleaner) Python automation as approved tooling Anyone reading these duplicates gets contradictory guidance vs the canonical \`.claude/CLAUDE.md\` in the standards-repo root. ## What changes Each of the 16 duplicate \`.claude/CLAUDE.md\` files (13 identical sha256, 2 near-duplicate variants, 1 unique-stale at the RSR root) has its body replaced with a thin pointer: > This satellite follows the hyperpolymath estate-wide policy. The authoritative \`CLAUDE.md\` is at the standards-repo root: <https://github.com/hyperpolymath/standards/blob/main/.claude/CLAUDE.md> > > The previous body of this file was a 2025-11-22 snapshot that listed ReScript as primary (banned in new code as of 2026-04-30), GitLab as the source-of-truth host (estate is on GitHub), and other guidance superseded by the canonical policy. Duplicating policy tables across satellites caused the drift; this pointer replaces the duplicate. Net diff: **16 files changed, 176 insertions(+), 1097 deletions(-)**. ## What is NOT touched (kept intentionally) Three top-level \`CLAUDE.md\` files carry unique repo-specific content beyond the language policy and are LEFT IN PLACE for a separate review: | File | Why kept | |---|---| | \`rhodium-standard-repositories/CLAUDE.md\` | 35KB unique RSR / CCCP architecture doc; has its own stale references (GitLab, ReScript primary) but warrants a dedicated review PR | | \`satellites/consent-aware-http/CLAUDE.md\` | Unique IETF spec / Internet-Draft authoring doc — not just a policy copy | | \`satellites/palimpsest-license/CLAUDE.md\` | Unique Palimpsest license-framework project doc | ## Related Same foundational pattern as #168 (subsuming legacy workflow templates into a single source-of-truth reusable workflow). The bug class is the same: **vendoring policy content across N locations guarantees drift**. The fix is the same: **delete the copies, point to one canonical location**. ## Test plan - [ ] Estate governance checks pass on this PR (the .claude/CLAUDE.md files affected are not load-bearing for any CI step). - [ ] Diff review confirms each replacement preserves no unique repo-specific content (verified via sha256 grouping — 13+2+1 = 16 files, all matched one of three stale-content hashes).
1 parent 7ae32cf commit 4a87691

16 files changed

Lines changed: 176 additions & 1097 deletions

File tree

Lines changed: 11 additions & 81 deletions
Original file line numberDiff line numberDiff line change
@@ -1,85 +1,15 @@
1-
## Machine-Readable Artefacts
1+
# CLAUDE.md — see canonical
22

3-
The following files in `.machine_readable/6a2/` contain structured project metadata
4-
in A2ML format (migrated from Guile Scheme on 2026-04-12):
3+
This satellite follows the hyperpolymath estate-wide policy. The
4+
authoritative `CLAUDE.md` is at the standards-repo root:
55

6-
- `.machine_readable/6a2/STATE.a2ml` - Current project state and progress
7-
- `.machine_readable/6a2/META.a2ml` - Architecture decisions and development practices
8-
- `.machine_readable/6a2/ECOSYSTEM.a2ml` - Position in the ecosystem and related projects
9-
- `.machine_readable/6a2/AGENTIC.a2ml` - AI agent interaction patterns
10-
- `.machine_readable/6a2/NEUROSYM.a2ml` - Neurosymbolic integration config
11-
- `.machine_readable/6a2/PLAYBOOK.a2ml` - Operational runbook
6+
- <https://github.com/hyperpolymath/standards/blob/main/.claude/CLAUDE.md>
127

13-
---
14-
15-
# CLAUDE.md - AI Assistant Instructions
16-
17-
## Language Policy (Hyperpolymath Standard)
18-
19-
### ALLOWED Languages & Tools
20-
21-
| Language/Tool | Use Case | Notes |
22-
|---------------|----------|-------|
23-
| **ReScript** | Primary application code | Compiles to JS, type-safe |
24-
| **Deno** | Runtime & package management | Replaces Node/npm/bun |
25-
| **Rust** | Performance-critical, systems, WASM | Preferred for CLI tools |
26-
| **Tauri 2.0+** | Mobile apps (iOS/Android) | Rust backend + web UI |
27-
| **Dioxus** | Mobile apps (native UI) | Pure Rust, React-like |
28-
| **Gleam** | Backend services | Runs on BEAM or compiles to JS |
29-
| **Bash/POSIX Shell** | Scripts, automation | Keep minimal |
30-
| **JavaScript** | Only where ReScript cannot | MCP protocol glue, Deno APIs |
31-
| **Python** | SaltStack only | No other Python permitted |
32-
| **Nickel** | Configuration language | For complex configs |
33-
| **Guile Scheme** | State/meta files | STATE.scm, META.scm, ECOSYSTEM.scm |
34-
| **Julia** | Batch scripts, data processing | Per RSR |
35-
| **OCaml** | AffineScript compiler | Language-specific |
36-
| **Ada** | Safety-critical systems | Where required |
37-
38-
### BANNED - Do Not Use
39-
40-
| Banned | Replacement |
41-
|--------|-------------|
42-
| TypeScript | ReScript |
43-
| Node.js | Deno |
44-
| npm | Deno |
45-
| Bun | Deno |
46-
| pnpm/yarn | Deno |
47-
| Go | Rust |
48-
| Python (general) | ReScript/Rust |
49-
| Java/Kotlin | Rust/Tauri/Dioxus |
50-
| Swift | Tauri/Dioxus |
51-
| React Native | Tauri/Dioxus |
52-
| Flutter/Dart | Tauri/Dioxus |
53-
54-
### Mobile Development
55-
56-
**No exceptions for Kotlin/Swift** - use Rust-first approach:
57-
58-
1. **Tauri 2.0+** - Web UI (ReScript) + Rust backend, MIT/Apache-2.0
59-
2. **Dioxus** - Pure Rust native UI, MIT/Apache-2.0
60-
61-
Both are FOSS with independent governance (no Big Tech).
62-
63-
### Enforcement Rules
64-
65-
1. **No new TypeScript files** - Convert existing TS to ReScript
66-
2. **No package.json for runtime deps** - Use deno.json imports
67-
3. **No node_modules in production** - Deno caches deps automatically
68-
4. **No Go code** - Use Rust instead
69-
5. **Python only for SaltStack** - All other Python must be rewritten
70-
6. **No Kotlin/Swift for mobile** - Use Tauri 2.0+ or Dioxus
71-
72-
### Package Management
73-
74-
- **Primary**: Guix (guix.scm)
75-
- **Fallback**: Nix (flake.nix)
76-
- **JS deps**: Deno (deno.json imports)
77-
78-
### Security Requirements
79-
80-
- No MD5/SHA1 for security (use SHA256+)
81-
- HTTPS only (no HTTP URLs)
82-
- No hardcoded secrets
83-
- SHA-pinned dependencies
84-
- SPDX license headers on all files
8+
The previous body of this file was a 2025-11-22 snapshot that listed
9+
ReScript as primary (banned in new code as of 2026-04-30), GitLab as
10+
the source-of-truth host (estate is on GitHub), and other guidance
11+
superseded by the canonical policy. Duplicating policy tables across
12+
satellites caused the drift; this pointer replaces the duplicate.
8513

14+
Add satellite-specific guidance below this line only — never re-paste
15+
the language-policy / tooling tables here.
Lines changed: 11 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,70 +1,15 @@
1-
# CLAUDE.md - AI Assistant Instructions
1+
# CLAUDE.md — see canonical
22

3-
## Language Policy (Hyperpolymath Standard)
3+
This satellite follows the hyperpolymath estate-wide policy. The
4+
authoritative `CLAUDE.md` is at the standards-repo root:
45

5-
### ALLOWED Languages & Tools
6+
- <https://github.com/hyperpolymath/standards/blob/main/.claude/CLAUDE.md>
67

7-
| Language/Tool | Use Case | Notes |
8-
|---------------|----------|-------|
9-
| **ReScript** | Primary application code | Compiles to JS, type-safe |
10-
| **Deno** | Runtime & package management | Replaces Node/npm/bun |
11-
| **Rust** | Performance-critical, systems, WASM | Preferred for CLI tools |
12-
| **Tauri 2.0+** | Mobile apps (iOS/Android) | Rust backend + web UI |
13-
| **Dioxus** | Mobile apps (native UI) | Pure Rust, React-like |
14-
| **Gleam** | Backend services | Runs on BEAM or compiles to JS |
15-
| **Bash/POSIX Shell** | Scripts, automation | Keep minimal |
16-
| **JavaScript** | Only where ReScript cannot | MCP protocol glue, Deno APIs |
17-
| **Python** | SaltStack only | No other Python permitted |
18-
| **Nickel** | Configuration language | For complex configs |
19-
| **Guile Scheme** | State/meta files | STATE.scm, META.scm, ECOSYSTEM.scm |
20-
| **Julia** | Batch scripts, data processing | Per RSR |
21-
| **OCaml** | AffineScript compiler | Language-specific |
22-
| **Ada** | Safety-critical systems | Where required |
8+
The previous body of this file was a 2025-11-22 snapshot that listed
9+
ReScript as primary (banned in new code as of 2026-04-30), GitLab as
10+
the source-of-truth host (estate is on GitHub), and other guidance
11+
superseded by the canonical policy. Duplicating policy tables across
12+
satellites caused the drift; this pointer replaces the duplicate.
2313

24-
### BANNED - Do Not Use
25-
26-
| Banned | Replacement |
27-
|--------|-------------|
28-
| TypeScript | ReScript |
29-
| Node.js | Deno |
30-
| npm | Deno |
31-
| Bun | Deno |
32-
| pnpm/yarn | Deno |
33-
| Go | Rust |
34-
| Python (general) | ReScript/Rust |
35-
| Java/Kotlin | Rust/Tauri/Dioxus |
36-
| Swift | Tauri/Dioxus |
37-
| React Native | Tauri/Dioxus |
38-
| Flutter/Dart | Tauri/Dioxus |
39-
40-
### Mobile Development
41-
42-
**No exceptions for Kotlin/Swift** - use Rust-first approach:
43-
44-
1. **Tauri 2.0+** - Web UI (ReScript) + Rust backend, MIT/Apache-2.0
45-
2. **Dioxus** - Pure Rust native UI, MIT/Apache-2.0
46-
47-
Both are FOSS with independent governance (no Big Tech).
48-
49-
### Enforcement Rules
50-
51-
1. **No new TypeScript files** - Convert existing TS to ReScript
52-
2. **No package.json for runtime deps** - Use deno.json imports
53-
3. **No node_modules in production** - Deno caches deps automatically
54-
4. **No Go code** - Use Rust instead
55-
5. **Python only for SaltStack** - All other Python must be rewritten
56-
6. **No Kotlin/Swift for mobile** - Use Tauri 2.0+ or Dioxus
57-
58-
### Package Management
59-
60-
- **Primary**: Guix (guix.scm)
61-
- **Fallback**: Nix (flake.nix)
62-
- **JS deps**: Deno (deno.json imports)
63-
64-
### Security Requirements
65-
66-
- No MD5/SHA1 for security (use SHA256+)
67-
- HTTPS only (no HTTP URLs)
68-
- No hardcoded secrets
69-
- SHA-pinned dependencies
70-
- SPDX license headers on all files
14+
Add satellite-specific guidance below this line only — never re-paste
15+
the language-policy / tooling tables here.
Lines changed: 11 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,70 +1,15 @@
1-
# CLAUDE.md - AI Assistant Instructions
1+
# CLAUDE.md — see canonical
22

3-
## Language Policy (Hyperpolymath Standard)
3+
This satellite follows the hyperpolymath estate-wide policy. The
4+
authoritative `CLAUDE.md` is at the standards-repo root:
45

5-
### ALLOWED Languages & Tools
6+
- <https://github.com/hyperpolymath/standards/blob/main/.claude/CLAUDE.md>
67

7-
| Language/Tool | Use Case | Notes |
8-
|---------------|----------|-------|
9-
| **ReScript** | Primary application code | Compiles to JS, type-safe |
10-
| **Deno** | Runtime & package management | Replaces Node/npm/bun |
11-
| **Rust** | Performance-critical, systems, WASM | Preferred for CLI tools |
12-
| **Tauri 2.0+** | Mobile apps (iOS/Android) | Rust backend + web UI |
13-
| **Dioxus** | Mobile apps (native UI) | Pure Rust, React-like |
14-
| **Gleam** | Backend services | Runs on BEAM or compiles to JS |
15-
| **Bash/POSIX Shell** | Scripts, automation | Keep minimal |
16-
| **JavaScript** | Only where ReScript cannot | MCP protocol glue, Deno APIs |
17-
| **Python** | SaltStack only | No other Python permitted |
18-
| **Nickel** | Configuration language | For complex configs |
19-
| **Guile Scheme** | State/meta files | STATE.scm, META.scm, ECOSYSTEM.scm |
20-
| **Julia** | Batch scripts, data processing | Per RSR |
21-
| **OCaml** | AffineScript compiler | Language-specific |
22-
| **Ada** | Safety-critical systems | Where required |
8+
The previous body of this file was a 2025-11-22 snapshot that listed
9+
ReScript as primary (banned in new code as of 2026-04-30), GitLab as
10+
the source-of-truth host (estate is on GitHub), and other guidance
11+
superseded by the canonical policy. Duplicating policy tables across
12+
satellites caused the drift; this pointer replaces the duplicate.
2313

24-
### BANNED - Do Not Use
25-
26-
| Banned | Replacement |
27-
|--------|-------------|
28-
| TypeScript | ReScript |
29-
| Node.js | Deno |
30-
| npm | Deno |
31-
| Bun | Deno |
32-
| pnpm/yarn | Deno |
33-
| Go | Rust |
34-
| Python (general) | ReScript/Rust |
35-
| Java/Kotlin | Rust/Tauri/Dioxus |
36-
| Swift | Tauri/Dioxus |
37-
| React Native | Tauri/Dioxus |
38-
| Flutter/Dart | Tauri/Dioxus |
39-
40-
### Mobile Development
41-
42-
**No exceptions for Kotlin/Swift** - use Rust-first approach:
43-
44-
1. **Tauri 2.0+** - Web UI (ReScript) + Rust backend, MIT/Apache-2.0
45-
2. **Dioxus** - Pure Rust native UI, MIT/Apache-2.0
46-
47-
Both are FOSS with independent governance (no Big Tech).
48-
49-
### Enforcement Rules
50-
51-
1. **No new TypeScript files** - Convert existing TS to ReScript
52-
2. **No package.json for runtime deps** - Use deno.json imports
53-
3. **No node_modules in production** - Deno caches deps automatically
54-
4. **No Go code** - Use Rust instead
55-
5. **Python only for SaltStack** - All other Python must be rewritten
56-
6. **No Kotlin/Swift for mobile** - Use Tauri 2.0+ or Dioxus
57-
58-
### Package Management
59-
60-
- **Primary**: Guix (guix.scm)
61-
- **Fallback**: Nix (flake.nix)
62-
- **JS deps**: Deno (deno.json imports)
63-
64-
### Security Requirements
65-
66-
- No MD5/SHA1 for security (use SHA256+)
67-
- HTTPS only (no HTTP URLs)
68-
- No hardcoded secrets
69-
- SHA-pinned dependencies
70-
- SPDX license headers on all files
14+
Add satellite-specific guidance below this line only — never re-paste
15+
the language-policy / tooling tables here.
Lines changed: 11 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -1,83 +1,15 @@
1-
## Machine-Readable Artefacts
1+
# CLAUDE.md — see canonical
22

3-
The following files in `.machine_readable/` contain structured project metadata:
3+
This satellite follows the hyperpolymath estate-wide policy. The
4+
authoritative `CLAUDE.md` is at the standards-repo root:
45

5-
- `STATE.scm` - Current project state and progress
6-
- `META.scm` - Architecture decisions and development practices
7-
- `ECOSYSTEM.scm` - Position in the ecosystem and related projects
8-
- `AGENTIC.scm` - AI agent interaction patterns
9-
- `NEUROSYM.scm` - Neurosymbolic integration config
10-
- `PLAYBOOK.scm` - Operational runbook
6+
- <https://github.com/hyperpolymath/standards/blob/main/.claude/CLAUDE.md>
117

12-
---
13-
14-
# CLAUDE.md - AI Assistant Instructions
15-
16-
## Language Policy (Hyperpolymath Standard)
17-
18-
### ALLOWED Languages & Tools
19-
20-
| Language/Tool | Use Case | Notes |
21-
|---------------|----------|-------|
22-
| **ReScript** | Primary application code | Compiles to JS, type-safe |
23-
| **Deno** | Runtime & package management | Replaces Node/npm/bun |
24-
| **Rust** | Performance-critical, systems, WASM | Preferred for CLI tools |
25-
| **Tauri 2.0+** | Mobile apps (iOS/Android) | Rust backend + web UI |
26-
| **Dioxus** | Mobile apps (native UI) | Pure Rust, React-like |
27-
| **Gleam** | Backend services | Runs on BEAM or compiles to JS |
28-
| **Bash/POSIX Shell** | Scripts, automation | Keep minimal |
29-
| **JavaScript** | Only where ReScript cannot | MCP protocol glue, Deno APIs |
30-
| **Nickel** | Configuration language | For complex configs |
31-
| **Guile Scheme** | State/meta files | STATE.scm, META.scm, ECOSYSTEM.scm |
32-
| **Julia** | Batch scripts, data processing | Per RSR |
33-
| **OCaml** | AffineScript compiler | Language-specific |
34-
| **Ada** | Safety-critical systems | Where required |
35-
36-
### BANNED - Do Not Use
37-
38-
| Banned | Replacement |
39-
|--------|-------------|
40-
| TypeScript | ReScript |
41-
| Node.js | Deno |
42-
| npm | Deno |
43-
| Bun | Deno |
44-
| pnpm/yarn | Deno |
45-
| Go | Rust |
46-
| Python | Julia/Rust/AffineScript |
47-
| Java/Kotlin | Rust/Tauri/Dioxus |
48-
| Swift | Tauri/Dioxus |
49-
| React Native | Tauri/Dioxus |
50-
| Flutter/Dart | Tauri/Dioxus |
51-
52-
### Mobile Development
53-
54-
**No exceptions for Kotlin/Swift** - use Rust-first approach:
55-
56-
1. **Tauri 2.0+** - Web UI (ReScript) + Rust backend, MIT/Apache-2.0
57-
2. **Dioxus** - Pure Rust native UI, MIT/Apache-2.0
58-
59-
Both are FOSS with independent governance (no Big Tech).
60-
61-
### Enforcement Rules
62-
63-
1. **No new TypeScript files** - Convert existing TS to ReScript
64-
2. **No package.json for runtime deps** - Use deno.json imports
65-
3. **No node_modules in production** - Deno caches deps automatically
66-
4. **No Go code** - Use Rust instead
67-
5. **No Python anywhere** - Use Julia for data/batch, Rust for systems, ReScript for apps
68-
6. **No Kotlin/Swift for mobile** - Use Tauri 2.0+ or Dioxus
69-
70-
### Package Management
71-
72-
- **Primary**: Guix (guix.scm)
73-
- **Fallback**: Nix (flake.nix)
74-
- **JS deps**: Deno (deno.json imports)
75-
76-
### Security Requirements
77-
78-
- No MD5/SHA1 for security (use SHA256+)
79-
- HTTPS only (no HTTP URLs)
80-
- No hardcoded secrets
81-
- SHA-pinned dependencies
82-
- SPDX license headers on all files
8+
The previous body of this file was a 2025-11-22 snapshot that listed
9+
ReScript as primary (banned in new code as of 2026-04-30), GitLab as
10+
the source-of-truth host (estate is on GitHub), and other guidance
11+
superseded by the canonical policy. Duplicating policy tables across
12+
satellites caused the drift; this pointer replaces the duplicate.
8313

14+
Add satellite-specific guidance below this line only — never re-paste
15+
the language-policy / tooling tables here.

0 commit comments

Comments
 (0)