Nodes/MKRShift_Nodes/Studio Delivery Plan
ComfyUI Node

Studio Delivery Plan

The one file name that never changes again

By criskb·Created 7 months ago·Updated 5 months ago· 0
Studio Delivery Plan
    • filename_prefix
    • subfolder
    • review_title
    • manifest_notes_json
    • delivery_plan_json
    projectMKRShift Production
    sequenceSEQ_01
    shotA001
    take1
    version_tagv001
    deliverableReview
    departmentLookdev
    artist
    client
    task
    round_label
    reviewer
    custom_badge
    date_text
    naming_modeEditorial
    extensionpng
    include_taketrue
    include_datetrue
    include_artistfalse
    include_clientfalse
    slate_json
    review_frame_info
    contact_sheet_info
    selection_manifest_json
    notes_json{}

    Every studio has that person who renames deliverables by hand and every file ends up as final_v2_REAL_v3_use_this.png. MKRStudioDeliveryPlan is the pack's answer: one node that holds every naming and metadata decision for a shot - project, sequence, shot, take, version, deliverable type, department, client, reviewer - and emits a consistent filename prefix plus a delivery_plan_json that every other Studio node can consume. Define it once, and slate, review frames, contact sheets, delivery sheets, and notes all agree on the same identity.

    This is the spine of the MKRShift Studio pipeline. The other nodes' optional delivery_plan_json inputs exist to be fed by this. So the smart way to build a review workflow is: MKRStudioDeliveryPlan first, then wire its JSON into everything downstream.

    The inputs that matter

    • project / sequence / shot / take / version_tag - the identity core. These are what end up in the filename, so get them right the first time.
    • deliverable - Review, Client Selects, Contact Sheet, Turnover, or Social Cut. This changes how the plan presents itself (a Contact Sheet deliverable expects a contact sheet; a Turnover expects an asset manifest).
    • naming_mode - Compact, Editorial, or Client Friendly. This is the file-naming dialect: compact is short and pipeline-friendly, editorial is descriptive, client friendly drops the cryptic tokens.
    • include_take / include_date / include_artist / include_client - toggles for what lands in the filename. Client-friendly mode + include_client = a filename a client can parse.
    • extension - default png; the file type for the deliverable.

    Optional inputs let you fold in the other Studio nodes' output - slate_json, review_frame_info, contact_sheet_info, selection_manifest_json, notes_json - so the plan reflects the whole review session, not just the shot card.

    What comes out

    • filename_prefix and subfolder - wire these into the pack's save/publish nodes and your exports land with the agreed names in the agreed folders.
    • review_title - the title for the review package, derived from your metadata.
    • manifest_notes_json - notes and manifest material combined.
    • delivery_plan_json - the plan itself; the input to MKRStudioDeliverySheet and MKRStudioReviewNotes.

    Installing it

    Part of criskb/MKRShift_Nodes from Cris K B. ComfyUI Manager search "MKRShift_Nodes", or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/criskb/MKRShift_Nodes
    

    Restart. No pip requirements, no models.

    The trap

    The plan only helps if it's actually wired through. If you type the same metadata into the slate, the review frame, and the save node separately, you're back to hand-maintained naming and this node is decoration. The payoff is in the wiring: let the plan be the single source of truth and the whole Studio cluster stays in sync. It's plumbing, but it's the plumbing that kills the _FINAL_v4 filenames.

    CategoryMKRShift Nodes/Studio/Delivery

    Inputs (25)

    NameTypeDefaultDescription
    projectSTRINGMKRShift Production
    sequenceSTRINGSEQ_01
    shotSTRINGA001
    takeSTRING1
    version_tagSTRINGv001
    deliverableCOMBOReview5 options: Review, Client Selects, Contact Sheet, Turnover, Social Cut
    departmentCOMBOLookdev7 options: General, Lookdev, Animation, Lighting, Comp, Editorial, +1
    artistSTRING
    clientSTRING
    taskSTRING
    round_labelSTRING
    reviewerSTRING
    custom_badgeSTRING
    date_textSTRING
    naming_modeCOMBOEditorial3 options: Compact, Editorial, Client Friendly
    extensionSTRINGpng
    include_takeBOOLEANtrue
    include_dateBOOLEANtrue
    include_artistBOOLEANfalse
    include_clientBOOLEANfalse
    slate_jsonoptSTRING
    review_frame_infooptSTRING
    contact_sheet_infooptSTRING
    selection_manifest_jsonoptSTRING
    notes_jsonoptSTRING{}

    Outputs (5)

    NameTypeDescription
    filename_prefixSTRING
    subfolderSTRING
    review_titleSTRING
    manifest_notes_jsonSTRING
    delivery_plan_jsonSTRING