# SRS-01 — AtlasOS – Calypso Storage Component

Version: 1.0  
Target Capacity: 30–60 TB  
Transport: iSCSI (SCST)  
Date: 2025

---

## 1. Purpose
This document specifies requirements for the **Storage Repository Component**, which provides disk-based backup targets to Bacula through iSCSI.

---

## 2. Scope

### In Scope
- Physical disk discovery
- Backup repository provisioning
- iSCSI LUN export
- Capacity monitoring and alerts

### Out of Scope
- Snapshot scheduling
- Replication
- Deduplication or compression engines

---

## 3. Functional Requirements

### 3.1 Disk Discovery
- Detect block devices and volume groups
- Display disk size, vendor, and health status

### 3.2 Repository Provisioning
- Create repositories using LVM Logical Volumes
- Optional support for ZFS zvol
- Resize repositories with safety validation

### 3.3 iSCSI Export
- Export repository as a dedicated iSCSI target
- Map repository as LUN 0
- Enforce initiator ACL

### 3.4 Capacity Monitoring
- Display used and free capacity
- Configurable warning and critical thresholds

---

## 4. Non-Functional Requirements
- No data loss during resize operations
- Minimal disruption to active iSCSI sessions

---

## 5. Acceptance Criteria
1. Repository is visible as an iSCSI LUN.
2. Bacula can mount and write to the disk target.
3. Threshold alerts trigger correctly.
