Skip to content

config new: flow scaffold _config.yml lacks the _keboola block, sync push sees component 'unknown' #650

Description

@padak

Summary

The flow scaffold generated by config new --component-id keboola.flow is the only scaffold category whose _config.yml has no _keboola block at all_build_flow_config_yml() (services/component_service.py) never emits one, while _build_config_yml() (all other categories) always appends:

_keboola:
  component_id: <id>

Impact

sync push resolves the component of an untracked local config from _keboola.component_id; with the block missing it falls back to "unknown" (_find_untracked_configs, sync_service.py), so a scaffolded flow can never be pushed from disk — the documented scaffold → edit → sync push workflow is broken for exactly this category. The scaffold reference (scaffold-workflow.md) even states "The _keboola.component_id field in _config.yml is required for push to work".

Fix

Append the same _keboola: {component_id: ...} footer in _build_flow_config_yml() (it already receives component_id), plus a regression test asserting every scaffold category emits the block.

Related: #644 (the --push path additionally needs config_id stamped into the scaffold; that fix handles a missing _keboola block defensively, but the scaffold-only path still needs this one).

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