All checks were successful
ci/woodpecker/tag/release Pipeline was successful
1.6 KiB
1.6 KiB
Stage: prepare
Purpose
Materialize canonical current-session inputs before processing stages.
Inputs
- resolved
campaign.yml,session.yml, and pipeline config - stable input files (
speakers,autocorrect,glossary,players,party) - audio source:
- local
audio_dir/audio_files, or - S3
audio_s3.prefix
- local
- enabled configured artifact input requirements for previous-session sources
Outputs
inputs/campaign.ymlinputs/session.ymlinputs/pipeline.resolved.ymlinputs/speakers.ymlinputs/autocorrect.ymlinputs/glossary.ymlinputs/players.ymlinputs/party.ymlaudio/*.flac- optional
previous/manifest.json - optional
previous/artifacts/** - deterministic
manifest.inputsentries (checksums + provenance)
Key Behavior
- validates required config/store state.
- enforces local audio vs S3 audio mutual exclusivity.
- materializes S3 audio through spool/cache-aware logic.
- scans enabled configured artifact inputs for
narratio.previous_session.artifact.*requirements. - when previous requirements exist:
- clears managed
previous/state; - builds previous-cache remote plan;
- downloads previous manifest/artifacts;
- records previous inputs in
manifest.inputs.
- clears managed
Required previous-session inputs fail when unavailable; optional missing inputs are skipped.
Invariants
- only
preparehydrates canonicalprevious/cache state. - managed previous artifacts are stored under
previous/artifacts/**without duplicateartifacts/artifacts/nesting. manifest.inputsordering is deterministic (kind,path).