docs(11.1-03): log the bonfire duplicate command name gap as a todo
This commit is contained in:
12
.planning/todos/pending/bonfire-duplicate-command-names.md
Normal file
12
.planning/todos/pending/bonfire-duplicate-command-names.md
Normal file
@@ -0,0 +1,12 @@
|
||||
---
|
||||
title: Reject duplicate console command names in bonfire.NewRoot
|
||||
date: 2026-09-30
|
||||
priority: low
|
||||
area: summercms.go bonfire
|
||||
---
|
||||
|
||||
`bonfire.NewRoot` validates each command name's form (`namespace:verb`, or one of the bare framework names) but does not check for duplicates. The generated application `main` appends plugin commands after the framework's runtime commands, so a plugin that declares a command with the same name as a framework command, or as another plugin's command, builds and starts without an error, and which one runs is decided by Cobra.
|
||||
|
||||
Found while writing `docs/console/writing-commands.md` (Phase 11.1 plan 03). The page describes the current behaviour: names are not checked for duplicates, so keep commands in the plugin's own namespace.
|
||||
|
||||
Suggested fix: make `bonfire.NewRoot` fail with an error naming the duplicated command when two commands share a name. `bonfire.NewCatalog`, which the scheduler calls through, has no error return, so the generated `main` should build the root first (as it does today) and rely on that check. Update the bonfire README and the docs page in the same change (the D-13 docs rule). The API change is outside the docs phase boundary, so it is not made in Phase 11.1.
|
||||
Reference in New Issue
Block a user