# S3 Archive Foundations Runbook This runbook documents the currently implemented storage/archive foundations and the boundaries of current behavior. ## Implemented Now - config modeling for: - `pipeline.storage.s3` - `pipeline.spool` - `pipeline.archive` - `session.inputs.audio_s3` - promotion rule validation for safe relative paths - run ID generation and path/key helper functions - manifest run/path identity fields - remote storage backend layer: - object-store interface (`List`, `Download`, `Upload`, `Exists`) - fake backend for deterministic tests - S3-compatible backend using AWS SDK v2 - config-based backend construction helper ## Not Implemented Yet - prepare-stage S3 object listing or download - archive-stage S3 upload or promotion writes - writing `current/manifest.json` or `current/run_id.txt` in S3 ## Operational Notes - local audio workflows remain the active development path (`audio_dir` or `audio_files`) - `audio_s3` and local audio config are mutually exclusive - do not place AWS credentials in Narratio config files ## Next Implementation Target Use the storage backend layer in prepare-stage session audio discovery/download flow, while preserving local audio input support.