Skip to content

kit environment[] values: multiline scalars are silently unsupported, reject in validate or support an encoded format #412

Description

@basiliskus

Follow-up from review on #401 (kit env session replay, #400).

The neutral hybrid/v1 environment block is a flat map of single-line string scalars. kit_spec_env's parser is line-oriented, so a YAML block scalar under environment: never parses as a value (the entry comes out mangled, e.g. a literal |), and the /var/lib/acq/kit-env replay marker on msb is line-oriented on the same assumption.

Today this fails silently. Options:

  1. Reject explicitly (recommended, YAGNI): make acq kit validate (and the apply-time parser warning path) flag a non-scalar or block-scalar environment value, so kit authors get a clear error instead of a mangled value.
  2. Support multiline values: encoded marker format (base64 per value, as commands[] argv already does) plus parser support for block scalars.

No known kit needs multiline env values, which is why #401 documents them as out of scope.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions