Skip to content

Commit 55a6ea7

Browse files
refactor(root): move root artefacts to their canonical locations (#122)
refactor(root): move root artefacts to their canonical locations Applies the estate root-shape rollout: files that are not root-level by necessity move to where their tooling and the estate canon expect them, and every reference to them is updated in the same change. * .github/hooks/validate-a2ml.sh (from .githooks/validate-a2ml.sh) -> .github/hooks/validate-a2ml.sh * .github/hooks/validate-k9.sh (from .githooks/validate-k9.sh) -> .github/hooks/validate-k9.sh * .github/workflows/dogfood-gate.yml * QUICKSTART-MAINTAINER.adoc * build/guix.scm (from guix.scm) -> build/guix.scm * .github/CONTRIBUTING.md (new) * CONTRIBUTING.adoc (deleted) * docs/accessibility/README.adoc Verified with `git apply --check` against current main before committing; no behaviour change intended, the Justfile entry points keep working.
1 parent 8bb6834 commit 55a6ea7

8 files changed

Lines changed: 126 additions & 155 deletions

File tree

‎.github/CONTRIBUTING.md‎

Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
# Contributing to RPA Elysium
2+
3+
We welcome contributions! Please read this guide before submitting.
4+
5+
## Development Setup
6+
7+
``` bash
8+
# Clone the repository
9+
git clone https://github.com/hyperpolymath/rpa-elysium.git
10+
cd rpa-elysium
11+
12+
# Build and test
13+
just check # fmt + lint + test
14+
just build # Release build
15+
16+
# Or individually
17+
cargo build --workspace
18+
cargo test --workspace
19+
cargo clippy --workspace --all-targets -- -D warnings
20+
```
21+
22+
## Repository Structure
23+
24+
rpa-elysium/
25+
├── crates/ # Rust workspace crates
26+
│ ├── rpa-core/ # Core types, traits, abstractions
27+
│ ├── rpa-plugin/ # WASM plugin system
28+
│ └── rpa-fs-workflow/ # Filesystem automation CLI (MVP)
29+
├── src/abi/ # Idris2 ABI definitions
30+
├── ffi/zig/ # Zig FFI implementation
31+
├── services/ # Backend services (Gleam)
32+
├── examples/ # Example workflow configs
33+
├── hooks/ # Validation scripts (pre-commit)
34+
├── .github/workflows/ # CI/CD pipelines (18 workflows)
35+
├── .machine_readable/ # A2ML project metadata
36+
├── contractiles/ # Governance contracts (K9, must/trust/dust)
37+
└── justfile # Build automation
38+
39+
## Language Policy
40+
41+
This project follows the [Hyperpolymath Language
42+
Policy](.claude/CLAUDE.md):
43+
44+
| Allowed | Use Case |
45+
|--------------|---------------------------|
46+
| **Rust** | Core framework, WASM, CLI |
47+
| **ReScript** | Management console UI |
48+
| **Gleam** | Backend services (BEAM) |
49+
| **Deno** | JS runtime (not Node.js) |
50+
| **Idris2** | ABI definitions |
51+
| **Zig** | FFI implementation |
52+
| **Bash** | Scripts, automation |
53+
54+
**Banned**: TypeScript, Node.js, npm, Go, Python, Java, Kotlin, Swift.
55+
56+
## Branch Naming
57+
58+
feat/short-description # New features
59+
fix/issue-number-description # Bug fixes
60+
docs/short-description # Documentation
61+
test/what-added # Test additions
62+
refactor/what-changed # Code improvements
63+
security/what-fixed # Security fixes
64+
65+
## Commit Messages
66+
67+
We follow [Conventional Commits](https://www.conventionalcommits.org/):
68+
69+
<type>(<scope>): <description>
70+
71+
[optional body]
72+
73+
[optional footer]
74+
75+
Types: `feat`, `fix`, `docs`, `test`, `refactor`, `security`, `chore`,
76+
`ci`
77+
78+
Scopes: `core`, `plugin`, `fs-workflow`, `abi`, `ffi`, `services`, `ci`
79+
80+
## Pull Request Process
81+
82+
1. Fork the repository and create a feature branch
83+
84+
2. Ensure `just` `check` passes (fmt, lint, test)
85+
86+
3. All SPDX headers must be `MPL-2.0`
87+
88+
4. All GitHub Actions must be SHA-pinned
89+
90+
5. No banned language code introduced
91+
92+
6. Submit PR against `main` with descriptive title and body
93+
94+
## Code Standards
95+
96+
- All source files must have SPDX license headers
97+
98+
- All code must pass `cargo` `clippy` `--` `-D` `warnings`
99+
100+
- All code must be formatted with `cargo` `fmt`
101+
102+
- Test coverage target: 80%+
103+
104+
- No hardcoded secrets, credentials, or API keys
105+
106+
- HTTPS only — no HTTP URLs
107+
108+
## Reporting Bugs
109+
110+
Use the [bug report template](.github/ISSUE_TEMPLATE/bug_report.md).
111+
Include: - Environment details (OS, Rust version, etc.) - Steps to
112+
reproduce - Expected vs actual behaviour
113+
114+
## Suggesting Features
115+
116+
Use the [feature request
117+
template](.github/ISSUE_TEMPLATE/feature_request.md). Include: - Problem
118+
statement - Proposed solution - Which crate/component this affects
119+
120+
## License
121+
122+
All contributions are licensed under MPL-2.0.

‎.github/workflows/dogfood-gate.yml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ jobs:
3535
fi
3636
- name: Validate A2ML manifests
3737
if: steps.detect.outputs.count > 0
38-
run: bash .githooks/validate-a2ml.sh
38+
run: bash .github/hooks/validate-a2ml.sh
3939
- name: Write summary
4040
run: |
4141
A2ML_COUNT="${{ steps.detect.outputs.count }}"
@@ -76,7 +76,7 @@ jobs:
7676
fi
7777
- name: Validate K9 contracts
7878
if: steps.detect.outputs.k9_count > 0
79-
run: bash .githooks/validate-k9.sh
79+
run: bash .github/hooks/validate-k9.sh
8080
- name: Write summary
8181
run: |
8282
K9_COUNT="${{ steps.detect.outputs.k9_count }}"

‎CONTRIBUTING.adoc‎

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

‎QUICKSTART-MAINTAINER.adoc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ Output: `{{BUILD_OUTPUT_PATH}}`
3232

3333
[source,bash]
3434
----
35-
guix build -f guix.scm
35+
guix build -f build/guix.scm
3636
----
3737

3838
=== Nix

‎docs/accessibility/README.adoc‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ Burble is committed to:
244244
* Supporting screen readers and other assistive technologies
245245
* Continuous improvement based on user feedback
246246

247-
We welcome contributions to improve accessibility. See our link:../CONTRIBUTING.adoc[Contributing Guide] for details.
247+
We welcome contributions to improve accessibility. See our link:../../.github/CONTRIBUTING.md[Contributing Guide] for details.
248248

249249
== Related Documents
250250

‎guix.scm‎

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

0 commit comments

Comments
 (0)