Skip to content

mkconcore loses ZMQ specialization data when multiple nodes reuse the same source file #418

@Titas-Ghosh

Description

@Titas-Ghosh

Hi @pradeeban ,

While exploring the specialization flow of ZMQ in mkconcore , i found that when multiple nodes reference the same script (example: A:common.py, B:common.py, C:common.py) and have different ZMQ edges, the generated specialized file keeps only part of the required PORT_* / PORT_NAME_* definitions.

Why this happens:

  • copy_with_port_portname.py generates output by basename only and returns early if that file already exists.
  • mkconcore.py runs specialization per node, passing node-level params each time.
  • So the first node writes common.py, and later nodes reuse it without merging their edge params.

Impact:

  • Valid workflows that intentionally reuse shared script files can run with incomplete ZMQ constants.
  • This can cause incorrect runtime wiring even though workflow parsing succeeds.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions