Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
423 changes: 423 additions & 0 deletions apps/rocmd/src/cli.rs

Large diffs are not rendered by default.

657 changes: 657 additions & 0 deletions apps/rocmd/src/common.rs

Large diffs are not rendered by default.

9,861 changes: 50 additions & 9,811 deletions apps/rocmd/src/lib.rs

Large diffs are not rendered by default.

1,561 changes: 1,561 additions & 0 deletions apps/rocmd/src/mcp.rs

Large diffs are not rendered by default.

2,297 changes: 2,297 additions & 0 deletions apps/rocmd/src/sandbox.rs

Large diffs are not rendered by default.

1,336 changes: 1,336 additions & 0 deletions apps/rocmd/src/service.rs

Large diffs are not rendered by default.

3,144 changes: 3,144 additions & 0 deletions apps/rocmd/src/watchers.rs

Large diffs are not rendered by default.

557 changes: 557 additions & 0 deletions apps/rocmd/src/webhook.rs

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ Subsystem modules already following full domain extraction (each owns its own ty

### `apps/rocmd` — background daemon

`lib.rs` modularization is in progress (ROCMAI-83, Phase 5 of EAI-7768's sequencing). Extracted so far: `persistence.rs` (`record_event`/`load_managed_services`, the automation-event/audit-log and managed-service-registry I/O shared across the daemon's sandbox, MCP, service-lifecycle, and watcher code). Still pending: a shared-helpers module for code used across ≥2 of those remaining clusters (GPU/amd-smi snapshotting, the bridge-snapshot diagnostic, small arg/healthcheck utilities), plus the CLI, sandbox, MCP, service-lifecycle, webhook, and watcher clusters themselves — each landing as its own PR.
Modularized (ROCMAI-83, Phase 5 of EAI-7768's sequencing): `persistence.rs` (`record_event`/`load_managed_services`, the automation-event/audit-log and managed-service-registry I/O shared across the daemon's sandbox, MCP, service-lifecycle, and watcher code), `common.rs` (helpers shared across ≥2 of the other clusters: GPU/amd-smi snapshotting, the bridge-snapshot diagnostic, `CommandCapture`/command-timeout plumbing, and small arg/healthcheck/endpoint-key utilities), `webhook.rs` (the local webhook source: its axum routes, request validation, and watcher-kind allow-list), `cli.rs` (the `Cli`/`Command` clap definitions, `SandboxToolArg`/`SandboxToolPolicy`, and the top-level dispatch in `run_cli`/`run_bin_cli`/`run_from_args`), `sandbox.rs` (bubblewrap/native sandbox execution, atomic-write helpers, artifact prefetch policy gating, and the sandbox-tool result shaping for `check_updates`/`driver_plan`), `mcp.rs` (the MCP stdio server, tool schema table, tool dispatch, and the `rocm`-subprocess capture/argv-building helpers behind the MCP tools), `service.rs` (managed-service PID lifecycle/stop, `run_daemon`'s foreground loop, `supervise_service`'s spawn-and-recover path, and serve-log startup-phase polling), and `watchers.rs` (event collection/dispatch for all built-in watchers — TheRock update, GPU metrics/thermal-pressure, cache-warm, driver-upgrade, server-recover — plus managed-service recovery classification and automation-proposal queuing). `lib.rs` itself is now top-level glue: module declarations and the two externally-consumed entry points (`run_bin_cli`/`run_from_args`, re-exported from `cli.rs`).

### `crates/rocm-core` — core library

Expand Down
Loading