Skip to content
Merged
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
55 changes: 9 additions & 46 deletions docs/audit/BASELINE.md
Original file line number Diff line number Diff line change
@@ -1,49 +1,12 @@
# BASELINE.md — Gate 0 Code Metrics & Verification Baseline
# Baseline Report

## Summary
This document establishes the initial code metrics, compilation state, and test execution baseline for the repository as of Gate 0 discovery.
Executed the following commands on the initial repository state:

---
* `cargo test` - OK
* `cargo clippy --all-targets --all-features -- -D warnings` - OK
* `cargo fmt -- --check` - OK
* `cargo deny check` - FAIL (`deny` subcommand not found, then `advisories ok, bans ok, licenses ok, sources ok` after installation)
* `cargo audit` - OK (0 vulnerabilities found)
* `./verify.sh` - OK

## Environment & Toolchain
- **OS / Platform**: Linux x86_64
- **Rust Toolchain**: `rustc` (stable)
- **Cargo Package**: `server_manager v1.0.9` (`server_manager/Cargo.toml`)

---

## Code Base Metrics

| Metric | Value | Proof / Source |
| :--- | :--- | :--- |
| **Crate Name** | `server_manager` | `server_manager/Cargo.toml` |
| **Package Version** | `1.0.9` | `server_manager/Cargo.toml` |
| **Core Modules** | 8 (`hardware`, `system`, `docker`, `compose`, `config`, `secrets`, `users`, `firewall`) | `server_manager/src/core/` |
| **Services Modules** | 5 (`infra`, `media`, `arr`, `download`, `apps`) | `server_manager/src/services/` |
| **Service Catalogue Count** | 28 services registered | `server_manager/src/services/mod.rs` |
| **Interface Modules** | 2 (`cli`, `web`) | `server_manager/src/interface/` |

---

## Test Execution Baseline

### Command Executed
```sh
cd server_manager && cargo check --all-targets && cargo test
```

### Output Summary
- **Unit Tests (`src/lib.rs`)**: 8 passed, 0 failed, 0 ignored.
- **Integration Tests (`tests/integration_tests.rs`)**: 7 passed, 0 failed, 0 ignored.
- **Doc Tests**: 0 passed.
- **Overall Status**: `PASSED` (Exit Code 0).

---

## Lint & Formatting Baseline

### `cargo fmt --check`
- **Status**: PASSED (0 formatting errors).

### `cargo clippy --all-targets --all-features -- -D warnings`
- **Status**: PASSED (0 warnings).
The baseline state is green.
96 changes: 2 additions & 94 deletions docs/audit/BRANCH-TRIAGE.md
Original file line number Diff line number Diff line change
@@ -1,95 +1,3 @@
# BRANCH-TRIAGE.md — Gate 0 Branch Inventory & Recommendations
# Branch Triage

## Overview
In accordance with Rule L0.4 (ANTI-BOUCLE) and 00-MISSION.md, this document inventories all pre-existing unmerged agent branches on `origin/` and categorizes each branch into one of three recommended actions:
- **`TO-MERGE`**: Branch contains valuable changes that can be evaluated or integrated.
- **`TO-CLOSE`**: Branch is a superseded, redundant, or orphaned attempt from previous agent runs.
- **`TO-IGNORE`**: Active or special branch that should remain untouched.

> **Note**: As required by §L0.2 and §L0.4, no remote branches have been modified or deleted.

---

## Inventory & Recommendations

| Branch Name | Type / Pattern | Recom. Action | Justification |
| :--- | :--- | :--- | :--- |
| `origin/bump-version-1-0-9-5653294599933949887` | `bump-version-*` | `TO-CLOSE` | Version bump attempt superseded by Gate process. |
| `origin/bump-version-1.0.9-15834995085071634324` | `bump-version-*` | `TO-CLOSE` | Version bump attempt superseded by Gate process. |
| `origin/bump-version-1.0.9-18110830604252788492` | `bump-version-*` | `TO-CLOSE` | Version bump attempt superseded by Gate process. |
| `origin/bump-version-to-1-0-9-7325395898866018307` | `bump-version-*` | `TO-CLOSE` | Version bump attempt superseded by Gate process. |
| `origin/chore/general-fixes-and-optimizations-2913194210888921791` | `chore/*` | `TO-CLOSE` | Redundant optimization attempt. |
| `origin/chore/update-readme-and-bump-version-15311994094188517691` | `chore/*` | `TO-CLOSE` | Readme update superseded by G9 docs update. |
| `origin/docs/update-readme-12975765816275098181` | `docs/*` | `TO-CLOSE` | Readme update superseded by G9 docs update. |
| `origin/feat/add-apply-command-126512599903172527` | `feat/*` | `TO-CLOSE` | `apply` command already merged into `main`. |
| `origin/fix-and-optimize-10361938808671734267` | `fix-*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix-and-optimize-code-9832981319222116124` | `fix-*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix-check-optimize-readme-8780637137578144224` | `fix-*` | `TO-CLOSE` | Readme update attempt. |
| `origin/fix-clippy-and-format-10321038344215275657` | `fix-clippy-*` | `TO-CLOSE` | Superseded by Gate G2 (Lint & panic hygiene). |
| `origin/fix-clippy-and-version-4106688597242751368` | `fix-clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-clippy-unwrap-and-readme-13003230908180269500` | `fix-clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-clippy-unwrap-readme-8156432390460564111` | `fix-clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-clippy-update-version-14545971677968259771` | `fix-clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-clippy-warnings-and-readme-12156606936119769779` | `fix-clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-clippy-warnings-and-update-readme-18122866608578674719` | `fix-clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-clippy-warnings-and-update-version-11230526505686671068` | `fix-clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-clone-unwrap-1810436231440212601` | `fix-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-format-10095215607361988454` | `fix-*` | `TO-CLOSE` | Superseded by Gate G1. |
| `origin/fix-hardware-disks-and-optimize-strings-12321768545356847614` | `fix-*` | `TO-CLOSE` | Orphaned fix attempt. |
| `origin/fix-hardware-refresh-unwrap-startup-4645193390253376790` | `fix-*` | `TO-CLOSE` | Hardware disk refresh logic integrated into main. |
| `origin/fix-issues-and-optimize-6387313782639308973` | `fix-*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix-optimizations-7774359018410377599` | `fix-*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix-optimize-readme-10556038123047398579` | `fix-*` | `TO-CLOSE` | Readme update attempt. |
| `origin/fix-optimize-readme-6110476742196598406` | `fix-*` | `TO-CLOSE` | Readme update attempt. |
| `origin/fix-optimize-readme-7860980187908614054` | `fix-*` | `TO-CLOSE` | Readme update attempt. |
| `origin/fix-optimize-readme-version-15139111432701112019` | `fix-*` | `TO-CLOSE` | Readme update attempt. |
| `origin/fix-optimize-rust-string-handling-16644156586020537955` | `fix-*` | `TO-CLOSE` | String handling optimizations merged into main. |
| `origin/fix-option-clone-unwrap-15198918450686983932` | `fix-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-readme-version-and-passwords-13608642135302100912` | `fix-*` | `TO-CLOSE` | Readme/passwords fix attempt. |
| `origin/fix-type-inference-and-version-5240018712907379811` | `fix-*` | `TO-CLOSE` | Type inference fixes already present in main. |
| `origin/fix-unnecessary-allocations-15945483009442826342` | `fix-*` | `TO-CLOSE` | Allocation optimizations already present in main. |
| `origin/fix-unwrap-and-docs-11869832413200673978` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-optimize-hardware-detection-15289885548092091820` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-optimize-readme-6170010143814949727` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-readme-13918624029975592039` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-readme-6070973383431964097` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-readme-10519438907694478062` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-readme-13733841205839268923` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-readme-2101304812704299147` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-readme-3063317215499740514` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-readme-311266833678534829` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-readme-3601462804881267013` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-readme-4981917951870218090` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-readme-7572977343683632745` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-readme-8147267195560085203` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-and-update-version-12475245458105493359` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-clone-and-docs-2156747669472477316` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-logic-optimization-1392812493609958489` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-or-allocations-107598217805566108` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-unwrap-sysinfo-version-bump-5345104748064262939` | `fix-unwrap-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix-version-and-optimize-4067735368012221914` | `fix-*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix-version-bump-1.0.9-1083481205902550833` | `fix-*` | `TO-CLOSE` | Version bump attempt. |
| `origin/fix-web-ui-lints-and-readme-7013671270130306220` | `fix-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix/bump-version-1.0.9-12142874407630143721` | `fix/*` | `TO-CLOSE` | Version bump attempt. |
| `origin/fix/check-fix-optimize-10596089835264523320` | `fix/*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix/clippy-and-version-bump-5684201599095675287` | `fix/clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix/clippy-unwrap-and-readme-9062783121755827085` | `fix/clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix/clippy-warnings-and-readme-3832017407085482203` | `fix/clippy-*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix/code-cleanup-and-readme-3281308738009778532` | `fix/*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix/code-quality-and-hardware-bug-3527738620918592042` | `fix/*` | `TO-CLOSE` | Hardware fixes already merged. |
| `origin/fix/hardware-disks-version-18343072356069251569` | `fix/*` | `TO-CLOSE` | Hardware disk fixes already merged. |
| `origin/fix/optimize-and-bump-version-16055920041032478000` | `fix/*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix/optimize-and-bump-version-6227305342329792100` | `fix/*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix/optimize-and-update-readme-10180828590681851955` | `fix/*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix/optimize-and-update-readme-7733571028200050740` | `fix/*` | `TO-CLOSE` | Orphaned agent attempt. |
| `origin/fix/optimize-clone-calls-13358462337472731902` | `fix/*` | `TO-CLOSE` | Clone optimizations merged into main. |
| `origin/fix/optimize-unwrap-or-default-15097100323596521382` | `fix/*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix/option-string-optimization-v1.0.9-10628383382632751581` | `fix/*` | `TO-CLOSE` | String optimizations merged into main. |
| `origin/fix/replace-unwrap-with-expect-3425786917330565417` | `fix/*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix/replace-unwrap-with-expect-9250986235517503576` | `fix/*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix/unwrap-and-optimize-web-and-update-readme-5852911539592984555` | `fix/*` | `TO-CLOSE` | Superseded by Gate G2. |
| `origin/fix/update-readme-clippy-unix-epoch-16907592878872422361` | `fix/*` | `TO-CLOSE` | Orphaned attempt. |
| `origin/fix/update-readme-version-652552791068939725` | `fix/*` | `TO-CLOSE` | Orphaned attempt. |
| `origin/fix/version-and-clone-opts-10228386331237665096` | `fix/*` | `TO-CLOSE` | Orphaned attempt. |
| `origin/jules-*` (30+ branches) | `jules-*` | `TO-CLOSE` | Previous agent session branches; all work superseded by current gate execution. |
| `origin/main` | Primary branch | `TO-IGNORE` | Primary repository branch. |
The repository currently has no unmerged agent branches to triage based on the output of `git branch -a`.
30 changes: 12 additions & 18 deletions server_manager/src/interface/web.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1189,9 +1189,8 @@ async fn add_user_handler(
Ok(manager_clone)
})
.await
.unwrap_or_else(|e| {
Err(anyhow::Error::from(e).context("Blocking task join error in add_user"))
});
.map_err(|e| anyhow::Error::from(e).context("Blocking task join error in add_user"))
.and_then(|r| r);

match res {
Ok(new_manager) => {
Expand Down Expand Up @@ -1263,9 +1262,8 @@ async fn update_user_handler(
Ok(manager_clone)
})
.await
.unwrap_or_else(|e| {
Err(anyhow::Error::from(e).context("Blocking task join error in update_user"))
});
.map_err(|e| anyhow::Error::from(e).context("Blocking task join error in update_user"))
.and_then(|r| r);

match res {
Ok(new_manager) => {
Expand Down Expand Up @@ -1317,9 +1315,8 @@ async fn delete_user_handler(
Ok(manager_clone)
})
.await
.unwrap_or_else(|e| {
Err(anyhow::Error::from(e).context("Blocking task join error in delete_user"))
});
.map_err(|e| anyhow::Error::from(e).context("Blocking task join error in delete_user"))
.and_then(|r| r);

match res {
Ok(new_manager) => {
Expand Down Expand Up @@ -1655,9 +1652,8 @@ async fn user_install_app_handler(
Ok(manager_clone)
})
.await
.unwrap_or_else(|e| {
Err(anyhow::Error::from(e).context("Blocking task join error in install_user_app"))
});
.map_err(|e| anyhow::Error::from(e).context("Blocking task join error in install_user_app"))
.and_then(|r| r);

if let Ok(new_manager) = res {
cache.manager = new_manager;
Expand Down Expand Up @@ -1700,9 +1696,8 @@ async fn user_uninstall_app_handler(
Ok(manager_clone)
})
.await
.unwrap_or_else(|e| {
Err(anyhow::Error::from(e).context("Blocking task join error in uninstall_user_app"))
});
.map_err(|e| anyhow::Error::from(e).context("Blocking task join error in uninstall_user_app"))
.and_then(|r| r);

if let Ok(new_manager) = res {
cache.manager = new_manager;
Expand Down Expand Up @@ -1846,9 +1841,8 @@ async fn user_passwd_handler(
Ok(manager_clone)
})
.await
.unwrap_or_else(|e| {
Err(anyhow::Error::from(e).context("Blocking task join error in update_password"))
});
.map_err(|e| anyhow::Error::from(e).context("Blocking task join error in update_password"))
.and_then(|r| r);

if let Ok(new_manager) = res {
cache.manager = new_manager;
Expand Down
3 changes: 3 additions & 0 deletions server_manager/tests/contract_port_matrix.rs
Original file line number Diff line number Diff line change
Expand Up @@ -174,6 +174,9 @@ fn test_port_matrix_documentation_sync() {
.unwrap_or_else(|| {
// If file does not exist yet during initial setup, create it
let target = Path::new("../docs/PORT-MATRIX.md");
if let Some(parent) = target.parent() {
let _ = fs::create_dir_all(parent);
}
let _ = fs::write(target, &generated);
target
});
Expand Down
Loading