Skip to content

feat: post init config command - #4577

Open
therightstuff wants to merge 3 commits into
github:mainfrom
therightstuff:feat/post-init-config-command
Open

therightstuff wants to merge 3 commits into
github:mainfrom
therightstuff:feat/post-init-config-command

Conversation

@therightstuff

Copy link
Copy Markdown

Add post-initialization project configuration

Description

Adds specify config so users can inspect and change supported project settings
after initialization:

  • list and list --json show persisted settings and installed extensions.
  • get <key> reads a setting; set feature-numbering sequential|timestamp
    updates numbering while preserving other settings.
  • Integration-owned settings direct users to specify integration use or
    upgrade, which regenerate the affected agent files. Read-only metadata and
    unknown keys receive distinct errors.
  • config extension exposes the existing extension lifecycle commands.

Configuration writes reject malformed or unreadable initialization files.
Legacy projects without an options file must select or install an integration
first, preventing a settings update from disabling legacy command registration.

Includes configuration reference documentation and a developer verifier that
exercises the workflow in a disposable project, including when
SPECIFY_INIT_DIR points to an existing project.

Testing

179 focused tests passed:

source .venv/bin/activate
python -m pytest tests/test_config_cli.py \
  tests/test_verify_post_initialization_configuration_script.py \
  tests/integrations/test_integration_subcommand.py -q

Coverage includes configuration validation and persistence, legacy extension
registration, disposable-project verification, script-upgrade regeneration,
and preservation of customized commands and saved settings on refused upgrades.

uvx --offline ruff@0.15.0 check src tests and git diff --check passed.
The full repository test suite was not run.

AI Disclosure

  • I did use AI assistance.

Codex (GPT-6) assisted with implementation, review, tests, and documentation.

Expose persisted project settings and extension management through specify config. Keep integration-owned settings protected and reject invalid configuration before updating it.

Add an isolated workflow verifier, regression coverage, and configuration documentation.

Assisted-by: Codex (model: GPT-6, autonomous)
The upstream artifact catalog discovers scripts at the core script root. Move the contributor-only verifier into scripts/dev and update its callers so it does not appear as a runtime artifact.

Assisted-by: Codex (model: GPT-6, autonomous)
Reject config writes that would disable legacy command registration. Add script-upgrade regression coverage and document the supported configuration and lint workflows.

Assisted-by: Codex (model: GPT-6, autonomous)
@mnriem mnriem added the triage-can-wait Verdict: valid and in-scope but deprioritized; held behind the evidence gate label Sep 14, 2026
@mnriem

mnriem commented Sep 15, 2026

Copy link
Copy Markdown
Collaborator

Please rescope this around a concrete post-initialization use case that the documented configuration/update workflow does not adequately support, taking the installed extensions and presets into account.

Before introducing another CLI command surface, let’s establish the gap, which component owns it, and the smallest change needed. Please propose that scope here before further implementation. Any resulting PR should address one coherent problem; leave unrelated tooling and contributor-document cleanup out.

Drafted for @mnriem with assistance from GitHub Copilot (model: GPT-6 Astra; interactive comment drafting).

@mnriem mnriem added the author-needs-rescope Sprawling or batched diff — split into one focused, single-concern PR label Sep 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author-needs-rescope Sprawling or batched diff — split into one focused, single-concern PR triage-can-wait Verdict: valid and in-scope but deprioritized; held behind the evidence gate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants