Commit graph

30 commits

Author SHA1 Message Date
93dd9aa772 fix: reorganize docs on CI development 2026-02-16 22:47:31 +07:00
825a8e658f feat: show CI output in Forgejo UI via PR comments and status descriptions
- Add target_url to StatusUpdate for linking commit statuses to PR comments
- StatusReporter can now find open PRs, post markdown comments with job output,
  and re-post pipeline status with target_url pointing to the comment
- On job failure, commit status description includes last ~10 output lines
- Pipeline completion triggers a PR comment with <details> per job showing
  up to 100 lines of output
- Add ureq json feature for Forgejo API response parsing

Authored by Claude, lovingly guided by Zachery Aaron Shores-Chmielewski
2026-02-16 22:47:31 +07:00
7be6ab7ed0 fix: resolve pipe-buffer deadlock and add runner observability
Read stdout and stderr concurrently (background thread for stderr)
to prevent the classic deadlock where cargo blocks writing stderr
while the parent blocks reading stdout. Timeout now actually kills
the child process via kill -9. Added eprintln logging for all job
lifecycle events so failures are visible in local-runner.log.

Also switches .ci.yml to use $HOME instead of ~ for shell portability.

Authored by Claude, lovingly guided by Zachery Aaron Shores-Chmielewski
2026-02-16 22:47:31 +07:00
0c6f9c9f39 feat: deploy CI pipeline with ci-relay and local-runner
Add ci-relay (VPS webhook receiver) and local-runner (Thinkpad CI
executor) crates that communicate over iroh. Includes .ci.yml smoke
test pipeline, simulation tests, and development docs.

Authored by Claude, lovingly guided by Zachery Aaron Shores-Chmielewski
2026-02-16 22:47:28 +07:00
e9b93670eb feat: CI runner MVP 2026-02-16 22:46:37 +07:00
f7f786bfb1 fix: cli for datastore works 2026-02-16 22:44:51 +07:00
ffbe9d0c54 feat: distributed datastore primitives protocol
Implements MVP for a swactor distributed datastore, addressing large files via content addressing.
2026-02-16 22:44:27 +07:00
e2017ea369 feat: MVP authorization layer for swactor datastores (#43)
Some checks failed
ci/check Job 'check' failed: command exited with code 101 [stderr] | |_^ [stderr] | [stderr] = note: the lang item is first defined in crate `std` (which `ed25519_dalek` depends on) [stderr] = note: first definition in `std` loaded from /home/z...
ci/clippy Job 'clippy' failed: command exited with code 101 [stderr] help: try adding this [stderr] | [stderr] 157 + impl Default for TransportRouter { [stderr] 158 + fn default() -> Self { [stderr] 159 + Self::new() [stderr] 160 + } [st...
ci/ci Pipeline 'ci' failure
Very barebones, untrustworthy, barely reviewed auth layer. LGTM.
Co-authored-by: Zachery Aaron Shores-Chmielewski <zacheryasc@gmail.com>
Co-committed-by: Zachery Aaron Shores-Chmielewski <zacheryasc@gmail.com>
2026-02-16 15:39:27 +00:00
af1541695a feat: content addressed datastore (#41)
Some checks failed
ci/hello Job 'hello' completed
ci/smoke Pipeline 'smoke' success
ci/check Job 'check' completed
ci/clippy Job 'clippy' completed
ci/ci Pipeline 'ci' failure
Content addressable datastore. Allows you to configure a node to store and stream large blobs of data, and retrieve them from any swactor-connected node.
Co-authored-by: Zachery Aaron Shores-Chmielewski <zacheryasc@gmail.com>
Co-committed-by: Zachery Aaron Shores-Chmielewski <zacheryasc@gmail.com>
2026-02-15 17:03:31 +00:00
2f767a6ed8 feat: add support for iroh as the transport layer (#40)
Iroh gives us a lot as a transport layer. Lets make use of it.
Co-authored-by: Zachery Aaron Shores-Chmielewski <zacheryasc@gmail.com>
Co-committed-by: Zachery Aaron Shores-Chmielewski <zacheryasc@gmail.com>
2026-02-15 09:47:05 +00:00
7ef7bd0b50 refactor: consolidate crates (#39)
Crates continued to grow in number, but most are still quite small and feature specific. This refactor consolidates them.
2026-02-13 17:34:01 +00:00
ae6df6d6e2 fix: mild refactor and test coverage (#37) 2026-02-13 15:00:53 +00:00
1169f0322d feat: dashboard updates (#38)
Adds some more polish to the dashboard. Further modification will have to wait until swactor is used for more complex projects.
2026-02-13 14:42:10 +00:00
29b4f53d69 feat: extended features and testing for the WASM runtime actor prototype (#36) 2026-02-13 14:11:39 +00:00
b4312676a6 feat: skeleton for in browser swactor engine (#35)
Skeleton up for a web browser swactor engine that is capable of connecting with a cluster.
2026-02-13 13:27:34 +00:00
cd1816e398 feat: distribution simulation tests (#34)
Test cluster behavior in simulation.
2026-02-13 13:18:38 +00:00
a7124cb3d4 distribution realization (#33)
Write tests for docker integration, as docker is how we will initially handle distribution on heterogeneous hardware.
2026-02-13 07:55:12 +00:00
78cbd80803 skeleton of wasm runner actors (#32) 2026-02-13 07:42:44 +00:00
f4f26c9f41 major feature update
Improve the runtime, increase test coverage, add new actor types for monitoring and supervision to an `std` crate.
2026-02-13 07:11:24 +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
2da9198ee9 fix: stats datatypes and refactor channel signature (#28) 2026-02-10 07:35:58 +00:00
ef08d3e7a5 feat: transport protocol (#27)
Address actors via ID, send messages over transport (TCP, QUIC, etc)
2026-02-09 19:05:37 +00:00
bc70d5fd89 feat: data parallel mnist example (#26) 2026-02-09 14:42:25 +00:00
845132ff18 feat: mt benchmark (#25) 2026-02-09 14:02:40 +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
09504d0b67 cfuzz (#22) 2026-02-09 07:24:16 +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