feat: implement orchestrator core (Rust)
Task 1.1: ✅ Cargo.toml with axum, rusqlite, matrix-sdk, serde, etc. Task 1.2: ✅ Directory structure: src/core, src/adapters, src/integrations, src/api Task 1.5: ✅ config.example.toml with full schema Task 2.1: ✅ Data models: Agent, Task, Receipt, Artifact, TaskEvent Task 2.2: ✅ Event Store: SQLite append-only with task/agent tables Task 2.3: ✅ Task state machine: created→assigned→running→completed/failed Task 2.4: ✅ Global task queue with priority ordering Task 2.5: ✅ Background timeout checker Task 2.6: ✅ Retry policy with configurable max_retries Compiles clean (warnings only, no errors). API handler stubs in place for Phase 2.
This commit is contained in:
parent
e983955036
commit
4e01728a67
15 changed files with 5220 additions and 3 deletions
21
config.example.toml
Normal file
21
config.example.toml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
[server]
|
||||
bind = "0.0.0.0"
|
||||
port = 9090
|
||||
|
||||
[forgejo]
|
||||
url = "https://git.0x08.org"
|
||||
token = "" # Forgejo API token
|
||||
webhook_secret = "" # Webhook shared secret
|
||||
|
||||
[matrix]
|
||||
homeserver_url = "https://matrix.0x08.org"
|
||||
user_id = "@jeeves:0x08.org"
|
||||
access_token = "" # Matrix bot access token
|
||||
room_id = "" # Coordination room ID
|
||||
|
||||
[orchestrator]
|
||||
db_path = "data/agent-fleet.db"
|
||||
heartbeat_interval_secs = 60
|
||||
heartbeat_timeout_threshold = 3
|
||||
task_timeout_secs = 1800
|
||||
default_max_retries = 2
|
||||
Loading…
Add table
Add a link
Reference in a new issue