Add shared pipeline type contracts
Objective
Define shared pipeline artifact and node contracts in a dedicated type module.
Why this matters
As pipeline nodes increase, contracts should stop living inside implementation files.
Parallelization metadata
Track
scripts
Depends on
Safe to run in parallel with
- pipeline node issues
- remotion utility issues
Merge risk
Files in scope
Primary:
scripts/types/pipeline.ts
May touch:
Required implementation
1. Define shared types
At minimum:
ArtifactRef
PipelineNode
PipelineRunResult
2. Re-export or migrate current DAG types
Avoid duplicate contract definitions.
Constraints
Handoff contract
All future pipeline files should import from scripts/types/pipeline.ts.
Acceptance criteria
Functional
Integration checks
Verification commands
tsc --noEmit
Expected result:
Explicitly out of scope
Suggested branch
refactor/s6-pipeline-types
Suggested commit slug
phase-3-step-5-pipeline-types
Add shared pipeline type contracts
Objective
Define shared pipeline artifact and node contracts in a dedicated type module.
Why this matters
As pipeline nodes increase, contracts should stop living inside implementation files.
Parallelization metadata
Track
scriptsDepends on
Safe to run in parallel with
Merge risk
Files in scope
Primary:
scripts/types/pipeline.tsMay touch:
scripts/pipeline/dag.tsRequired implementation
1. Define shared types
At minimum:
ArtifactRefPipelineNodePipelineRunResult2. Re-export or migrate current DAG types
Avoid duplicate contract definitions.
Constraints
Handoff contract
All future pipeline files should import from
scripts/types/pipeline.ts.Acceptance criteria
Functional
Integration checks
Verification commands
tsc --noEmitExpected result:
Explicitly out of scope
Suggested branch
refactor/s6-pipeline-typesSuggested commit slug
phase-3-step-5-pipeline-types