Skip to content

Commit 4acb45f

Browse files
Testclaude
andcommitted
docs: update README and roadmap with new directory structure
- Updated project structure documentation - Added contractiles/must/ and must runner info - Updated resource paths for reorganized docs - Added references to SCM checkpoint files Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 96a3e52 commit 4acb45f

2 files changed

Lines changed: 96 additions & 28 deletions

File tree

README.adoc

Lines changed: 89 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -86,34 +86,96 @@ cd src/ffi/wasm && wasm-pack build --target web
8686

8787
```bash
8888
wokelang/
89-
├── docs/ # Theory docs (EBNF, semantics, etc.)
90-
├── src/
91-
│ ├── lexer.mll # Lexer (OCaml)
92-
│ ├── parser.mly # Parser (Menhir)
93-
│ ├── ast.ml # Abstract Syntax Tree
94-
│ ├── types.ml # Type checker
95-
│ ├── eval.ml # Interpreter
96-
│ ├── repl.ml # REPL
97-
│ └── ffi/ # FFI bindings
98-
│ ├── vyper/ # Vyper contracts + ABI bindings
99-
│ │ ├── contracts/
100-
│ │ ├── abi/
101-
│ │ └── bindings/
102-
│ └── wasm/ # WASM (wasm-pack)
103-
├── examples/
104-
│ ├── hello.wl # Hello World
105-
│ ├── fib.wl # Fibonacci
106-
│ └── gratitude_blockchain.wl # Vyper integration
107-
├── tests/ # Test cases
89+
├── .bot_directives/ # Bot constraint files for gitbot-fleet
90+
├── .claude/ # Project-specific AI instructions
91+
├── .github/workflows/ # CI/CD (Hypatia, CodeQL, Scorecard)
92+
├── .machine_readable/ # Machine-readable metadata
93+
│ └── 6scm/ # SCM checkpoint files
94+
├── contractiles/ # Contractile definitions
95+
│ ├── dust/ # External dependencies
96+
│ ├── k9/ # Security constraints
97+
│ ├── lust/ # Desired features
98+
│ ├── must/ # Required features & must runner
99+
│ └── trust/ # Trust boundaries
100+
├── docs/ # Documentation
101+
│ ├── architecture/ # Architecture docs (COMPILER-ROADMAP.adoc)
102+
│ ├── sessions/ # Development session reports
103+
│ ├── ABI-FFI-README.adoc # ABI/FFI integration guide
104+
│ ├── DEPLOYMENT.adoc # Deployment documentation
105+
│ ├── GAP-ANALYSIS.adoc # Implementation gaps
106+
│ ├── NEXT-STEPS.adoc # Development roadmap
107+
│ ├── PALIMPSEST.adoc # License philosophy
108+
│ ├── PROVEN.md # proven library integration
109+
│ └── WORKERS.adoc # Worker documentation
110+
├── examples/ # Example WokeLang programs
111+
├── ffi/
112+
│ └── zig/ # Zig FFI implementation (C ABI)
113+
│ └── src/
114+
├── license/ # License files
115+
│ └── PMPL-1.0-or-later.txt
108116
├── scripts/
109-
│ ├── setup.sh # Setup script
110-
│ └── build.sh # Build script
111-
├── .devcontainer/ # VS Code Dev Container
112-
├── .github/workflows/ # GitHub Actions CI/CD
113-
├── Cargo.toml # Rust dependencies
114-
├── dune # OCaml build system
115-
├── dune-project
116-
└── README.md # This file
117+
│ ├── install-hooks.sh # Install git hooks
118+
│ └── setup.sh # Setup script
119+
├── site/ # wokelang.org website
120+
│ ├── content/ # Markdown content
121+
│ ├── templates/ # Tera templates
122+
│ └── config.yaml # Site configuration
123+
├── src/
124+
│ ├── abi/ # Idris2 ABI definitions with formal proofs
125+
│ │ ├── Foreign.idr
126+
│ │ ├── Layout.idr
127+
│ │ └── Types.idr
128+
│ ├── ast/ # Abstract Syntax Tree
129+
│ ├── interpreter/ # Tree-walking interpreter
130+
│ ├── lexer/ # Token generation (logos)
131+
│ ├── parser/ # Parser (tokens → AST)
132+
│ ├── stdlib/ # Standard library modules
133+
│ │ ├── array.rs
134+
│ │ ├── chan.rs # Go-style channels
135+
│ │ ├── io.rs # File I/O with consent
136+
│ │ ├── math.rs
137+
│ │ ├── net.rs # HTTP with consent
138+
│ │ ├── string.rs
139+
│ │ └── time.rs
140+
│ ├── typechecker/ # Hindley-Milner type inference
141+
│ ├── vm/ # Bytecode VM
142+
│ │ ├── bytecode.rs
143+
│ │ ├── compiler.rs
144+
│ │ ├── machine.rs
145+
│ │ └── optimizer.rs
146+
│ ├── main.rs # CLI entry point
147+
│ └── repl.rs # REPL
148+
├── tests/ # Test suite
149+
├── .tool-versions # asdf tool versions (rust, deno, idris2, zig)
150+
├── AI.a2ml # AI assistant instructions
151+
├── Cargo.toml # Rust dependencies
152+
├── ECOSYSTEM.scm # Ecosystem relationships
153+
├── META.scm # Architectural decisions
154+
├── STATE.scm # Current project state
155+
└── README.adoc # This file
156+
157+
## 🛠 Development
158+
159+
### Must Runner (Contractile Enforcement)
160+
161+
WokeLang uses a **Mustfile** (in `contractiles/must/`) to enforce mandatory checks:
162+
163+
```bash
164+
# Run all mandatory checks (security, tests, format)
165+
must run
166+
167+
# Individual checks
168+
just lint # Security checks
169+
just test # Test suite
170+
just fmt # Code formatting
171+
```
172+
173+
**Mustfile** defines requirements that MUST pass before commits/releases. See `contractiles/` for full contractile system:
174+
- `must/` - Mandatory requirements (MUST pass)
175+
- `lust/` - Desired features (WANT to have)
176+
- `dust/` - External dependencies
177+
- `trust/` - Trust boundaries
178+
- `k9/` - Security constraints
117179

118180
## 🛠 Development
119181

docs/architecture/COMPILER-ROADMAP.adoc

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
// SPDX-License-Identifier: PMPL-1.0-or-later
12
# WokeLang Compiler Roadmap
23

34
## Current Status (2026-01-31)
@@ -311,10 +312,15 @@ See the task list above for areas that need work. The highest priority items are
311312
312313
## Resources
313314

314-
- **ABI/FFI Documentation**: `ABI-FFI-README.md`
315+
- **ABI/FFI Documentation**: `docs/ABI-FFI-README.adoc`
315316
- **Bytecode Specification**: `src/vm/bytecode.rs`
316317
- **Example Programs**: `examples/`
317318
- **Language Specification**: `docs/` (TODO)
319+
- **proven Integration**: `docs/PROVEN.md`
320+
- **Project State**: `STATE.scm`
321+
- **Ecosystem**: `ECOSYSTEM.scm`
322+
- **Architecture Decisions**: `META.scm`
323+
- **Development Sessions**: `docs/sessions/`
318324
319325
## Estimated Timeline to v0.1
320326

0 commit comments

Comments
 (0)