ci: optional selfhost-loop workflow + determinism script
Add tools/selfhost_loop.sh with path-normalized C and stripped ELF checks (bootstrap ×2). Wire GitHub Actions (manual/weekly/main paths) outside default make test. Raise selfhost lexer maxTokens for large files.
This commit is contained in:
@@ -189,6 +189,17 @@ summary table and exits:
|
||||
|
||||
Use `Std::Test` module for assertions inside test code.
|
||||
|
||||
### Selfhost loop (optional CI)
|
||||
```bash
|
||||
make selfhost-loop # bootstrap builds src/ twice; C+ELF match
|
||||
BUX_SELFHOST_FIXED_POINT=1 make selfhost-loop # also buxc2→buxc3 (experimental)
|
||||
```
|
||||
Not part of default `make test`. GitHub Actions workflow
|
||||
`.github/workflows/selfhost-loop.yml` runs it on:
|
||||
- manual `workflow_dispatch`
|
||||
- weekly schedule
|
||||
- pushes to `main` that touch `src/`, `lib/`, bootstrap, or the loop script
|
||||
|
||||
### Format (`bux fmt`)
|
||||
```bash
|
||||
./buxc fmt examples/hello.bux # reformat one file
|
||||
|
||||
Reference in New Issue
Block a user