Design the feature-pack gating mechanism in scaffold.Copy()
- Dominant language
- Go
- Stars
- 0
- Forks
- 0
- Avg merge
- 3h 18m
- Merged PRs (30d)
- 26
Description
The template tree ships every file unconditionally; nothing in `Copy()` can include or omit a file based on what the developer selected. The init CLI design named this phase 2 and left it undesigned, sketching directory- or manifest-based inclusion for pack-owned files plus conditionals on a handful of genuinely shared ones — `go.mod`, `docker-compose.yml`, the wire provider list, `.env.example` (`docs/superpowers/specs/2026-08-27-gonext-init-cli-design.md`, *Open items*).
Worth registering now because #13 introduces a path-ownership map for selecting agent tooling, which is the same problem at smaller scale. Either that map generalises into the pack mechanism or the two solve the same thing twice — better to decide deliberately than to discover the duplication later. `gonext add ` (#15) depends on whatever this settles.
Came out of reviewing the deferred sections of the existing specs.
Contributor guide
No contributing guide indexed for this repository
Research direction
Read the Open items section of docs/superpowers/specs/2026-08-27-gonext-init-cli-design.md, then inspect scaffold.Copy() and the path-ownership work in #13. Compare that with the dependency from #15 and document a decided gating approach covering pack-owned files and the listed shared files, including how it avoids duplicate ownership logic.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- cli, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100