You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Wire the morphir extension sub-commands to their handlers #492
The morphir extension sub-commands are registered in src/Morphir.Tooling/Scenarios/ManagementScenario.cs, but they never call their handlers. Until 0.4.0-alpha.1 each one printed a stub message and exited 0. For example, install reported success without installing anything, and list always printed "No … installed". From 0.4.0-alpha.1 they fail with a "not implemented yet" error and a non-zero exit code, which links to this issue.
The handlers already exist in src/Morphir.Tooling/Features/Management/ExtensionHandlers.cs:
list, install <name>, use <name>, remove <name>, which <name> → ExtensionHandlers.HandleList/HandleInstall/HandleUse/HandleRemove/HandleWhich (no unit tests yet)
Scope
Wire each sub-command to its handler: resolve ArtifactPathResolver (and HttpClient for install) from the CLI's services, map the options (--platform, --local) and print the result.
Print human-readable results to stdout and send logs to stderr only. Add a --json option if it fits the other commands.
extension list — step 0, OpenSpec change add-extension-registry. It lists the extensions that each host knows (first the built-in C# and F# generators), with id, version, types, delivery and hosts, in text or --json. Implementation is starting now.
install, use, remove, which — PRD step 3. They will use the upstream content-addressed store, catalog and lock format under MORPHIR_HOME, plus per-level selection files and staged/ folders. The existing handlers in ExtensionHandlers.cs use a <platform>/<name>/<version> layout that the PRD does not keep, so they are not wired; the unused list handler is removed in step 0.
Until step 3, install, use, remove and which keep failing with "not implemented yet" and a link to this issue.
Activity
fix(cli): fail unimplemented dist/tool/extension commands; release as…
fix(release): run the deployment E2E tests, fail unimplemented comman…
docs: plan the Morphir extension model and step 0 registry, add F#/C#…
DamianReeves commentedon Nov 7, 2026
Plan for this issue, from the Morphir extension model PRD (approved, landed in #501):
extension list— step 0, OpenSpec changeadd-extension-registry. It lists the extensions that each host knows (first the built-in C# and F# generators), with id, version, types, delivery and hosts, in text or--json. Implementation is starting now.install,use,remove,which— PRD step 3. They will use the upstream content-addressed store, catalog and lock format underMORPHIR_HOME, plus per-level selection files andstaged/folders. The existing handlers inExtensionHandlers.csuse a<platform>/<name>/<version>layout that the PRD does not keep, so they are not wired; the unused list handler is removed in step 0.Until step 3,
install,use,removeandwhichkeep failing with "not implemented yet" and a link to this issue.