Expand description
Invariant checks for a loaded Compose tree.
Errors are collected rather than returned on first failure so the CLI can pretty-print the full list.
Enums§
Constants§
- DISPLAY_
NAME_ MAX_ CHARS - T-160: max length for
display_name. 64 is a sensible upper bound matching ratatui column widths in the TUI roster pane; longer names would force unsightly truncation downstream. Counted in Unicode scalar values (chars().count()), not grapheme clusters — most operator-typed labels are simple text where the two coincide, and the saved dependency onunicode-segmentationis not worth the fidelity gain for an at-most-64-cell rendering window.
Functions§
- is_
valid_ id - T-310: charset rule for
project.idand agent ids — both flow, unquoted, into shell-bound strings ({project}:{agent}insupervisor::build_up_command) and into tmux session names. A conservative ASCII allowlist keeps every downstream consumer safe at the boundary instead of forcing each call site to quote defensively.:is intentionally NOT allowed — it’s reserved as the canonical<project>:<agent>join separator everywhere in teamctl, and admitting it into an id would makeid()parse ambiguous. - validate