Problem
The tmp config section (tmp.type, tmp.bucket, tmp.path, tmp.retention) stores execution artifacts — screenshots, PDFs, reports — with configurable retention. These are not temporary files. The naming is misleading and will confuse users as the artifact system matures.
Proposed Solution
Rename the config section from tmp to storage:
# Before
tmp:
type: s3
bucket: mantle-artifacts
prefix: artifacts/
retention: 24h
# After
storage:
type: s3
bucket: mantle-artifacts
prefix: artifacts/
retention: 24h
Environment variables change accordingly:
MANTLE_TMP_TYPE → MANTLE_STORAGE_TYPE
MANTLE_TMP_BUCKET → MANTLE_STORAGE_BUCKET
MANTLE_TMP_PREFIX → MANTLE_STORAGE_PREFIX
MANTLE_TMP_PATH → MANTLE_STORAGE_PATH
MANTLE_TMP_RETENTION → MANTLE_STORAGE_RETENTION
Scope
- Rename
TmpConfig struct to StorageConfig in internal/config/config.go
- Update Viper bindings and env var prefixes
- Rename
TmpStorage interface/field references in internal/artifact/
- Update
docker-compose.yml environment variables
- Update documentation (
configuration.md, deployment-guide.md, artifact docs)
- Document the breaking change in the changelog
Context
This is a breaking config change — better to do it now while the user base is small than after v1.0.0. Related to #52 (config file versioning) which could ease future migrations.
Problem
The
tmpconfig section (tmp.type,tmp.bucket,tmp.path,tmp.retention) stores execution artifacts — screenshots, PDFs, reports — with configurable retention. These are not temporary files. The naming is misleading and will confuse users as the artifact system matures.Proposed Solution
Rename the config section from
tmptostorage:Environment variables change accordingly:
MANTLE_TMP_TYPE→MANTLE_STORAGE_TYPEMANTLE_TMP_BUCKET→MANTLE_STORAGE_BUCKETMANTLE_TMP_PREFIX→MANTLE_STORAGE_PREFIXMANTLE_TMP_PATH→MANTLE_STORAGE_PATHMANTLE_TMP_RETENTION→MANTLE_STORAGE_RETENTIONScope
TmpConfigstruct toStorageConfigininternal/config/config.goTmpStorageinterface/field references ininternal/artifact/docker-compose.ymlenvironment variablesconfiguration.md,deployment-guide.md, artifact docs)Context
This is a breaking config change — better to do it now while the user base is small than after v1.0.0. Related to #52 (config file versioning) which could ease future migrations.