Classify freedom-intelligence for State Hub (agents domain), sync FI-WP-0001..0003 with hub IDs, enrich catalog entries with profile/SWOT, and pin the open-weight reserve to D:\vault\coulomb\freedom-intelligence\ with strategic S-tier policy.
180 lines
7.3 KiB
Markdown
180 lines
7.3 KiB
Markdown
# Backup storage policy — open-weight model reserve
|
|
|
|
**Status:** facility + path pinned (workstation VAULT HD)
|
|
**Related:** `INTENT.md`, `SCOPE.md`, `inventory/collection-policy.md`,
|
|
`docs/decisions/2026-07-24-nas-strategic-reserve.md`
|
|
**Adjacent:** `disaster-control` BackupPolicy (platform backups — different concern)
|
|
|
|
---
|
|
|
|
## Purpose
|
|
|
|
Define where Freedom Intelligence stores **open-weight model blobs** (and justified
|
|
companions), how much capacity we allow, and how this reserve relates to other
|
|
lab backup facilities.
|
|
|
|
Git never stores weight tensors. Git stores:
|
|
|
|
* inventory catalog metadata (`inventory/catalog/`)
|
|
* policies and schemas
|
|
* research briefs
|
|
|
|
---
|
|
|
|
## Storage class
|
|
|
|
| Requirement | Policy |
|
|
| ----------- | ------ |
|
|
| **Class** | Backup / bulk durable storage — **not** hot cluster PVCs or app disks |
|
|
| **Facility** | Workstation VAULT HD (`D:`) under `D:\vault\coulomb\` (interim pin 2026-07-28) |
|
|
| **Durability** | Survives WSL rebuilds; weights live on the VAULT volume, not the git/WSL root |
|
|
| **Performance** | Sequential read for restore/training pull is enough; low latency not required |
|
|
| **Access** | Operator and approved lab hosts only; not a public mirror |
|
|
| **Separation** | Do not co-mingle with age-encrypted operational backups (Forgejo dumps, k3s state) without a clear subdirectory and different lifecycle rules |
|
|
|
|
Platform backup paths such as `/opt/backup/railiance/{infra,cluster}/` and
|
|
`~/.cache/railiance/backups/` are **operational recovery** lanes. Model weights
|
|
belong on the **VAULT model tree**, not on railiance hot disks.
|
|
|
|
---
|
|
|
|
## Target location
|
|
|
|
| Field | Value |
|
|
| ----- | ----- |
|
|
| **Host / facility** | Workstation-attached bulk HD **VAULT** (Windows `D:`) |
|
|
| **Raw capacity** | ~1.86 TB total (~1.76 TB free as of 2026-07-28 pin) |
|
|
| **Base path (Windows)** | `D:\vault\coulomb\freedom-intelligence\` |
|
|
| **Base path (WSL, when D: automounted)** | `/mnt/d/vault/coulomb/freedom-intelligence/` |
|
|
| **Layout under base** | See [On-disk layout](#on-disk-layout) |
|
|
| **Mount on lab hosts** | Local attach on operator workstation; WSL via drvfs `D:` → `/mnt/d` when enabled |
|
|
| **Credentials** | Local filesystem ACL on the workstation HD; never commit secrets |
|
|
|
|
**Interim note:** Earlier policy assumed a dedicated ~1 TB NAS. Operator chose this
|
|
VAULT volume under `D:\vault\coulomb\` for now. Soft quota **850 GiB** for the
|
|
model tree still applies (self-imposed discipline; disk is larger).
|
|
|
|
Do **not** bulk-download multi-GB models into this git workspace or into hot
|
|
root filesystems (`/` on WSL, `C:`).
|
|
|
|
### Path shape (pinned)
|
|
|
|
```text
|
|
D:\vault\coulomb\freedom-intelligence\ # Windows
|
|
/mnt/d/vault/coulomb/freedom-intelligence/ # WSL when D: mounted
|
|
├── models/
|
|
│ └── {org}__{name}/
|
|
│ └── {revision}/
|
|
│ ├── blobs/ # weight files, shards
|
|
│ └── MANIFEST.txt # optional local copy of hashes
|
|
├── companions/ # adapters, tokenizers only when separate
|
|
└── staging/ # incomplete downloads; not catalog-ready
|
|
```
|
|
|
|
Map each `{org}__{name}/{revision}` to an inventory catalog entry.
|
|
|
|
Directories `models/`, `staging/`, and `companions/` were created 2026-07-28.
|
|
|
|
---
|
|
|
|
## On-disk layout
|
|
|
|
| Path element | Rule |
|
|
| ------------ | ---- |
|
|
| `org__name` | Hugging Face-style id with `/` → `__` |
|
|
| `revision` | Git commit SHA, tag, or release id used at download time |
|
|
| `blobs/` | Actual files; prefer original names from source |
|
|
| `staging/` | Incomplete transfers; purge or resume; never mark collected until complete + verified |
|
|
|
|
Optional layout tags (directory name or catalog field):
|
|
|
|
| Tag | Meaning |
|
|
| --- | ------- |
|
|
| runnable | Fits current run envelope (R tier) |
|
|
| strategic | Capability reserve; may exceed current hardware (S tier) |
|
|
|
|
---
|
|
|
|
## Capacity budget
|
|
|
|
| Parameter | Policy |
|
|
| --------- | ------ |
|
|
| **Device** | VAULT HD (`D:`) — model tree under `D:\vault\coulomb\freedom-intelligence\` |
|
|
| **Soft quota (model reserve)** | **850 GiB** (self-imposed; disk is larger) |
|
|
| **Hard stop** | **920 GiB** used under the freedom-intelligence base path |
|
|
| **Growth review** | When catalog total ≥ **70% soft quota (~595 GiB)** |
|
|
| **Per-pull threshold** | See `inventory/collection-policy.md` |
|
|
| **Eviction** | Prefer drop **W** (watch) and easily re-obtained quants; protect unique **S** SOTA bases and the **R** spine |
|
|
|
|
### Portfolio guidance on 1 TB
|
|
|
|
* Always keep the **runnable spine (R / former P0)** resident.
|
|
* Use remaining space for a **small number of most-capable open models (S)**,
|
|
preferably well-provenance compressed weights when full precision would exhaust the disk.
|
|
* Do **not** attempt to mirror entire HF orgs.
|
|
* Full bf16 of multiple 600B-class models will **not** fit; prioritize top capability identities.
|
|
|
|
---
|
|
|
|
## Integrity and provenance
|
|
|
|
For every completed collection:
|
|
|
|
1. Record source URL and revision in the catalog entry.
|
|
2. Store checksums (`sha256` of each blob or upstream manifest digest).
|
|
3. Record download date (UTC) and downloader identity.
|
|
4. Prefer official org releases over anonymous re-uploads.
|
|
5. Keep license text or SPDX id in catalog; refuse unclear licenses.
|
|
|
|
Verification: **catalog claims must match on-disk checksums** before status `collected`.
|
|
|
|
---
|
|
|
|
## Retention
|
|
|
|
| Class | Retention |
|
|
| ----- | --------- |
|
|
| **Strategic capability (S)** | Keep until explicit deprecation or displacement by a clearly stronger open successor |
|
|
| **Runnable spine (R)** | Keep while still the lab default for local ops / FT |
|
|
| **Working set** | Active experiment bases + optional one superseded revision |
|
|
| **Staging** | Max 14 days incomplete, then purge |
|
|
| **Deprecated / evicted** | Metadata retained in catalog; blobs may be deleted |
|
|
|
|
---
|
|
|
|
## Encryption and offsite
|
|
|
|
| Topic | Policy |
|
|
| ----- | ------ |
|
|
| **At rest** | NAS default; extra age/GPG of multi-hundred-GB trees optional |
|
|
| **In transit** | Trusted lab network / local attach |
|
|
| **Offsite copy** | Optional later; coordinate with disaster-control if added so model bulk does not break ops backup SLAs |
|
|
|
|
---
|
|
|
|
## What must not live here
|
|
|
|
* Closed weights or artifacts whose terms forbid offline retention
|
|
* Secrets, API keys, customer data, or ungoverned training corpora with personal data
|
|
* Operational backups (databases, k3s state, Forgejo dumps) as the primary home
|
|
* Git LFS dumps of full model trees as a substitute for the NAS
|
|
|
|
---
|
|
|
|
## Operator checklist
|
|
|
|
- [x] Choose facility: bulk durable storage for model reserve (2026-07-24 intent)
|
|
- [x] Set soft quota: **850 GiB** / hard stop **920 GiB**
|
|
- [x] Pin path: **`D:\vault\coulomb\freedom-intelligence\`** (2026-07-28)
|
|
- [x] Create `models/`, `staging/`, `companions/`
|
|
- [x] Document Windows + WSL path forms above
|
|
- [x] Ensure WSL can see `D:` (`/mnt/d`) when downloads run from Linux (verified 2026-07-28)
|
|
|
|
### Pin log
|
|
|
|
| Date | Operator | Change |
|
|
| ---- | -------- | ------ |
|
|
| 2026-07-24 | foundation | Policy created; path unpinned |
|
|
| 2026-07-24 | operator direction | Facility intent = 1 TB local NAS; soft quota 850 GiB; strategic unrunnable models in scope |
|
|
| 2026-07-28 | operator direction | **Interim pin:** workstation VAULT HD `D:\vault\coulomb\freedom-intelligence\`; layout created; soft quota retained |
|
|
| 2026-07-28 | operator | WSL mount verified: `D:` → `/mnt/d` (1.9T, writable) |
|