Backlog Module Ownership Cleanup
Why
Backlog command ownership is still split across specfact-cli core shims, the built-in backlog-core package, and the marketplace bundle nold-ai/specfact-backlog. That violates the intended module boundary, causes duplicate command overlap, and leaves backlog prompts/templates coupled to core code even though they belong to backlog behavior.
What Changes
- Make
nold-ai/specfact-backlog the sole owner of user-facing backlog and policy commands.
- Remove backlog command ownership and backlog-specific prompt/template assets from
specfact-cli core.
- Keep only truly shared runtime contracts, provider adapters, and generic data models in core.
- Move backlog-coupled prompt and template resources out of core so prompt ownership matches command ownership.
- Remove duplicate-registration fallback behavior once backlog is module-owned and no longer overlaps with core.
Capabilities
New Capabilities
backlog-module-ownership: Backlog commands, prompts, and templates are owned by the backlog module instead of being split across core and module layers.
Acceptance Criteria
- Running
specfact with nold-ai/specfact-backlog installed does not produce duplicate backlog command overlap warnings during normal startup.
- User-facing backlog commands are provided only by the installed backlog module, not by a parallel core backlog command surface.
- Backlog-specific prompts and templates are shipped from the backlog module instead of core CLI resources.
- Core retains only shared runtime contracts, provider integrations, and generic data models required by multiple modules.
- Validation and command-audit coverage prove the backlog command tree works end-to-end with module-only ownership.
Dependencies
Impact
- Affected code:
modules/backlog-core, src/specfact_cli/commands/backlog_commands.py, src/specfact_cli/groups/backlog_group.py, backlog-specific core runtime/helpers/resources.
- Affected repos:
specfact-cli and specfact-cli-modules.
- User-visible result: backlog command ownership becomes unambiguous, startup is quiet, and module boundaries match the intended architecture.
OpenSpec Change Proposal: backlog-module-ownership-cleanup
Backlog Module Ownership Cleanup
Why
Backlog command ownership is still split across
specfact-clicore shims, the built-inbacklog-corepackage, and the marketplace bundlenold-ai/specfact-backlog. That violates the intended module boundary, causes duplicate command overlap, and leaves backlog prompts/templates coupled to core code even though they belong to backlog behavior.What Changes
nold-ai/specfact-backlogthe sole owner of user-facing backlog and policy commands.specfact-clicore.Capabilities
New Capabilities
backlog-module-ownership: Backlog commands, prompts, and templates are owned by the backlog module instead of being split across core and module layers.Acceptance Criteria
specfactwithnold-ai/specfact-backloginstalled does not produce duplicate backlog command overlap warnings during normal startup.Dependencies
module-migration-06-core-decoupling-cleanup([Change] module-migration-06 - Core Decoupling Cleanup After Module Extraction #338) andmodule-migration-07-test-migration-cleanup([Change] module-migration-07 - Test Migration Cleanup After Core Slimming #339) establish the broader module-migration baseline.cli-val-07-command-package-runtime-validationdocuments the duplicate-command/runtime-noise findings this cleanup resolves.init-ide-prompt-source-selectiondepends on this cleanup to finalize prompt ownership boundaries.Impact
modules/backlog-core,src/specfact_cli/commands/backlog_commands.py,src/specfact_cli/groups/backlog_group.py, backlog-specific core runtime/helpers/resources.specfact-cliandspecfact-cli-modules.OpenSpec Change Proposal:
backlog-module-ownership-cleanup