Skip to content

Define configuration, environment, signal, and shutdown conventions #229

Description

@codeforester

Parent: #214

Train position: 15 of 26
Phase: P2 — Project kit and deterministic distribution

Problem

A framework needs one application model beyond parsing: deterministic configuration precedence, safe noninteractive behavior, lifecycle signals, cleanup, and shutdown. Without conventions, every consumer must invent incompatible policies around otherwise shared runtime primitives.

Acceptance criteria

  • Define and implement deterministic precedence across CLI values, environment, explicit project or user configuration, and defaults, including value provenance.
  • Treat configuration as data by default; never silently execute untrusted shell content, and fail clearly for explicitly requested missing or malformed files.
  • Standardize common help, version, verbosity, color, dry-run, noninteractive, prompt, and configuration options without forcing every application to enable them.
  • Define INT, TERM, HUP, normal-return, fatal-error, and secondary-cleanup behavior with stable statuses and exactly-once LIFO cleanup.
  • Prevent secrets from appearing in help, effective-configuration reports, provenance, completions, or lifecycle diagnostics.
  • Provide composable application hooks and contract tests without enlarging the stable Core with optional policy.

Dependencies

Metadata

Metadata

Assignees

Labels

enhancementNew feature or product improvement

Type

No type

Projects

Status
Backlog

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions