Developer
3a88294696
feat: command interface — frontend-agnostic dispatch crate
...
Add swactor-command crate that decouples command dispatch from the
dashboard, enabling the same commands from REPL, REST, TUI, or any
future frontend.
- CommandRouter with dispatch(), CommandHandler trait, CommandMeta
- CommandRequest/CommandResponse (serde-serializable JSON protocol)
- CommandContext with Arc<Runtime> + optional StatsEnricher trait
- 9 built-in commands extracted from investigate.rs:
help, overview, workers, worker, actors, actor, hot, phases, diff,
shutdown
- REPL line parser (parse_line) with positional arg mapping
- REST adapter (from_query_params) for HTTP query parameters
- Dashboard integration: StatsEnricher impl for StatsCollector,
investigate.rs refactored to thin CommandRouter wrapper,
server.rs updated to share CommandRouter across handler threads
- 18 behavioral tests in crates/command/tests/command_api.rs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 18:03:30 +00:00
d817ad952f
feat: distributed runtime ( #30 )
...
Major feature addition. For full details read `./docs/development_history/DISTRIBUTION.md`
2026-02-12 09:13:50 +00:00
076f1194bf
feat: tui, agent interface, stats hook ( #29 )
...
Runtime dashboard now features a TUI option and an interface for LLM tool use. Removed some bloat from stats collecting and replaced with a hook function to dump runtime stats into.
2026-02-11 15:23:26 +00:00
d61ea50414
fix: gossip dashboard ( #24 )
...
Better, but still imperfect, performance in replay for large simulation sizes.
2026-02-09 09:07:38 +00:00
1a64f421bf
feat: runtime dashboard and docs ( #23 )
...
Live and replay demo for a runtime dashboard. Added docs with svg files.
2026-02-09 09:04:57 +00:00
9beca6c5dc
feat: gossip simulation ( #21 )
...
Simulate a simple push-pull epidemic broadcast.
2026-02-08 16:18:39 +00:00
75aefa0c49
refactor: repack external bindings into their own crates ( #19 )
2026-02-07 17:39:02 +00:00
85c7c557ee
feat: python bindings ( #7 )
...
Python bindings allowing us to interact with the library in a python REPL
2026-02-06 12:47:51 +00:00
5a9af73de6
refactor: major library changes ( #5 )
...
Refactoring to logically separate component modules in order to make it easier to develop tests, metrics, tracing, etc.
2026-02-06 11:25:37 +00:00
55077dbf57
feat: rewrite ( #1 )
...
Did not like the requirement of a tokio runtime and async/await. Rewrote
to use lock free queues (`crossbeam_queue::ArrayQueue`) as the basic
primitive to enable a runtime consisting of many pseudo-processes that
can pass messages to each other.
Co-authored-by: Zachery Aaron Shores-Chmielewski <zachanon@gmail.com>
Reviewed-on: http://zachery.lol/code/code/zacheryasc/swactor/pulls/1
2026-01-23 05:00:57 +00:00
Zachery Aaron Shores-Chmielewski
120ba0ec71
init
...
Skeletal actor framework. Somewhat unweildy, needs a message box, a better runtime, and different channels. However, hello world example works
2025-11-24 19:39:17 -05:00