Skip to content

feat(options)!: pf-4119 programmatic, CLI, experimental registry#200

Merged
cdcabrera merged 1 commit into
patternfly:mainfrom
cdcabrera:pf-4119-expoptions
May 21, 2026
Merged

feat(options)!: pf-4119 programmatic, CLI, experimental registry#200
cdcabrera merged 1 commit into
patternfly:mainfrom
cdcabrera:pf-4119-expoptions

Conversation

@cdcabrera
Copy link
Copy Markdown
Member

@cdcabrera cdcabrera commented May 18, 2026

What is it?

  • feat(options)!: pf-4119 programmatic, CLI, experimental registry
    • index, annotations, pass experimental options for setOptions
    • options, registry driven options for programmatic, CLI, experimental
    • options.parser, breakout CLI and programmatic parsers
    • options.context, confirm experimental options
    • options.defaults, experimental options list for use tracking
    • options.helpers, kebabToCamel helper
    • server, log warnings for experimental option use
    • e2e, minor typing, parser imports

Notes

  • only base work. this base does not include any experimental options being activated
  • includes a refactor of how args are passed through the cli which in turn includes an enhancement where we can now parse multiple options as a list, for example --tool one --tool two --tool three
  • potential follow up skill add, cdcabrera@32a1389

BREAKING CHANGE: PfMcpOptions is now limited to the supported options registry;
extra keys passed to start() are ignored. Previously, any DefaultOptions field
could be supplied programmatically.

This change centralizes option metadata and ensures that only supported,
validated configurations reach the server instance.

To migrate:

  • Ensure all keys passed to start() match the PfMcpOptions interface.

Check the work

Implements an experimental flag here, cdcabrera@39cc297

  1. Update the NPM packages with $ npm install
  2. $ npm run build
  3. $ npm run test:integration
  4. confirm the e2e checks come back clean. the related e2e is located in stdioTransport.test.ts

Updates issue/story

closes #183 pf-4119

related #182

@cdcabrera cdcabrera force-pushed the pf-4119-expoptions branch 2 times, most recently from c50f8da to 24f2e00 Compare May 19, 2026 16:41
@cdcabrera cdcabrera changed the title feat: pf-4119 allow experimental options feat: pf-4119 experimental options base May 19, 2026
@cdcabrera cdcabrera force-pushed the pf-4119-expoptions branch from 4103f51 to 6133e65 Compare May 19, 2026 21:10
@cdcabrera cdcabrera marked this pull request as ready for review May 19, 2026 21:11
@cdcabrera
Copy link
Copy Markdown
Member Author

One final round of testing with the next set of commits for #141 and #182

@cdcabrera cdcabrera force-pushed the pf-4119-expoptions branch from 6133e65 to 8af2ebd Compare May 19, 2026 21:16
@cdcabrera
Copy link
Copy Markdown
Member Author

Review found an optimization... investigating

@cdcabrera cdcabrera force-pushed the pf-4119-expoptions branch from 1eb6979 to 744596c Compare May 21, 2026 02:17
@cdcabrera cdcabrera changed the title feat: pf-4119 experimental options base feat(options)!: pf-4119 programmatic, CLI, experimental registry May 21, 2026
@cdcabrera cdcabrera added the breaking a breaking change label May 21, 2026
* index, annotations, pass experimental options for setOptions
* options, registry driven options for programmatic, CLI, experimental
* options.parser, breakout CLI and programmatic parsers
* options.context, confirm experimental options
* options.defaults, experimental options list for use tracking
* options.helpers, kebabToCamel helper
* server, log warnings for experimental option use
* e2e, minor typing, parser imports

BREAKING CHANGE: PfMcpOptions is now limited to the supported options registry;
extra keys passed to start() are ignored. Previously, any DefaultOptions field
could be supplied programmatically.

This change centralizes option metadata and ensures that only supported,
validated configurations reach the server instance.

To migrate:
- Ensure all keys passed to start() match the PfMcpOptions interface.
@cdcabrera cdcabrera force-pushed the pf-4119-expoptions branch from 5efa2d0 to 04c9b85 Compare May 21, 2026 14:41
@cdcabrera cdcabrera merged commit 0a3420d into patternfly:main May 21, 2026
9 of 15 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking a breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add an experimental or alpha flag for releasing bleeding edge features

1 participant