Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 12 additions & 13 deletions .claude/CLAUDE.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
## Machine-Readable Artefacts

The following files in `.machine_readable/` contain structured project metadata:
The repository's canonical machine-readable metadata tree contains structured
project metadata, including:

- `.machine_readable/6a2/STATE.a2ml` - Current project state and progress
- `.machine_readable/6a2/META.a2ml` - Architecture decisions and development practices
Expand All @@ -22,13 +23,13 @@ The following files in `.machine_readable/` contain structured project metadata:
| **AffineScript** | Primary application code | Affine-typed, compiles to typed-wasm or ESM |
| **Bun** | JS runtime & package management (tier 1) | Default for all new work. Runs compiled ESM/JS directly — no bundler step. Uses an npm-compatible `package.json` plus `bun.lock` — both are expected, not anti-patterns. |
| **Rust** | Performance-critical, systems, WASM | Preferred for CLI tools |
| **Tauri 2.0+** | Mobile apps (iOS/Android) | Rust backend + web UI |
| **Gossamer** | Application shell | Estate-standard application shell |
| **Dioxus** | Mobile apps (native UI) | Pure Rust, React-like |
| **Gleam** | Backend services | Runs on BEAM or compiles to JS |
| **Bash/POSIX Shell** | Scripts, automation | Keep minimal |
| **JavaScript** | Only where AffineScript cannot | MCP protocol glue, Bun APIs |
| **Nickel** | Configuration language | For complex configs |
| **Guile Scheme** | State/meta files | .machine_readable/6a2/STATE.a2ml, .machine_readable/6a2/META.a2ml, .machine_readable/6a2/ECOSYSTEM.a2ml |
| **Guile Scheme** | State/meta files | `.machine_readable/6a2/` |
| **Julia** | Batch scripts, data processing | Per RSR |
| **OCaml** | AffineScript compiler | Language-specific |
| **Ada** | Safety-critical systems | Where required |
Expand All @@ -44,17 +45,17 @@ The following files in `.machine_readable/` contain structured project metadata:
| npm | Bun |
| pnpm/yarn | Bun |
| Go | Rust |
| Python | Julia/Rust/AffineScript |
| Java/Kotlin | Rust/Tauri/Dioxus |
| Swift | Tauri/Dioxus |
| React Native | Tauri/Dioxus |
| Flutter/Dart | Tauri/Dioxus |
| Python | Rust/AffineScript |
| Java/Kotlin | Rust/Gossamer/Dioxus |
| Swift | Gossamer/Dioxus |
| React Native | Gossamer/Dioxus |
| Flutter/Dart | Gossamer/Dioxus |

### Mobile Development

**No exceptions for Kotlin/Swift** - use Rust-first approach:

1. **Tauri 2.0+** - Web UI (AffineScript) + Rust backend, MIT/Apache-2.0
1. **Gossamer** - Estate-standard application shell
2. **Dioxus** - Pure Rust native UI, MIT/Apache-2.0

Both are FOSS with independent governance (no Big Tech).
Expand All @@ -65,13 +66,12 @@ Both are FOSS with independent governance (no Big Tech).
2. **Use `package.json` + `bun.lock` for JS runtime deps** - Bun is npm-compatible; a manifest is REQUIRED
3. **`bun install --production` for production deps** - resolved from `package.json`, pinned via `bun.lock`
4. **No Go code** - Use Rust instead
5. **No Python anywhere** - Use Julia for data/batch, Rust for systems, AffineScript for apps
6. **No Kotlin/Swift for mobile** - Use Tauri 2.0+ or Dioxus
5. **No Python anywhere** - Use Rust for systems and AffineScript for apps
6. **No Kotlin/Swift for mobile** - Use Gossamer or Dioxus

### Package Management

- **Primary**: Guix (guix.scm)
- **Fallback**: Nix (flake.nix)
- **JS deps**: Bun (`package.json` + `bun.lock`). Declare tooling as a devDependency and run `bunx --no-install --bun <tool>` — a bare `bunx <tool>` can fetch an unpinned package and may start Node via its shebang.

### Security Requirements
Expand All @@ -81,4 +81,3 @@ Both are FOSS with independent governance (no Big Tech).
- No hardcoded secrets
- SHA-pinned dependencies
- SPDX license headers on all files

12 changes: 8 additions & 4 deletions ROADMAP.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,18 @@

== Current Status

Initial development phase.
Active maintenance of the Rust proof-of-concept. The core reversibility
mechanism, project documentation, and CI/CD configuration are present; formal
proofs, comprehensive tests, and production readiness remain pending. The
current CI workflow health requires follow-up before it can support a passing
CI claim.

== Milestones

=== v0.1.0 - Foundation
* [ ] Core functionality
* [ ] Basic documentation
* [ ] CI/CD pipeline
* [x] Core reversibility mechanism
* [x] Basic documentation
* [x] CI/CD configuration

=== v1.0.0 - Stable Release
* [ ] Full feature set
Expand Down
Loading