Skip to content

Add shared pipeline type contracts #43

@natashaannn

Description

@natashaannn

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

  • low

Files in scope

Primary:

  • scripts/types/pipeline.ts

May touch:

  • scripts/pipeline/dag.ts

Required implementation

1. Define shared types

At minimum:

  • ArtifactRef
  • PipelineNode
  • PipelineRunResult

2. Re-export or migrate current DAG types

Avoid duplicate contract definitions.


Constraints

  • type-only work

Handoff contract

All future pipeline files should import from scripts/types/pipeline.ts.


Acceptance criteria

Functional

  • no duplicate pipeline type definitions remain

Integration checks

  • DAG compiles against shared types

Verification commands

tsc --noEmit

Expected result:

  • zero errors

Explicitly out of scope

  • runner behavior changes

Suggested branch

refactor/s6-pipeline-types

Suggested commit slug

phase-3-step-5-pipeline-types

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions