fix: harden quick-dev-new-preview UX and fix standalone agent dash names
- Relabel [K] Keep as-is to context-specific accept the risks wording - Add split reasoning explanation before multi-goal menu in step-01 - Fix toDashName/toUnderscoreName to treat standalone like core (no module prefix) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
ee25fcca6f
commit
14171b0f88
|
|
@ -33,7 +33,8 @@ spec_file: '' # set at runtime before leaving this step
|
||||||
3. Version control sanity check. Is the working tree clean? Does the current branch make sense for this intent — considering its name and recent history? If the tree is dirty or the branch is an obvious mismatch, HALT and ask the human before proceeding. If version control is unavailable, skip this check.
|
3. Version control sanity check. Is the working tree clean? Does the current branch make sense for this intent — considering its name and recent history? If the tree is dirty or the branch is an obvious mismatch, HALT and ask the human before proceeding. If version control is unavailable, skip this check.
|
||||||
4. Multi-goal check (see SCOPE STANDARD). If the intent fails the single-goal criteria:
|
4. Multi-goal check (see SCOPE STANDARD). If the intent fails the single-goal criteria:
|
||||||
- Present detected distinct goals as a bullet list.
|
- Present detected distinct goals as a bullet list.
|
||||||
- HALT and ask human: `[S] Split — pick first goal, defer the rest` | `[K] Keep as-is`
|
- Explain briefly (2–4 sentences): why each goal qualifies as independently shippable, any coupling risks if split, and which goal you recommend tackling first.
|
||||||
|
- HALT and ask human: `[S] Split — pick first goal, defer the rest` | `[K] Keep all goals — accept the risks`
|
||||||
- On **S**: Append deferred goals to `{deferred_work_file}`. Narrow scope to the first-mentioned goal. Continue routing.
|
- On **S**: Append deferred goals to `{deferred_work_file}`. Narrow scope to the first-mentioned goal. Continue routing.
|
||||||
- On **K**: Proceed as-is.
|
- On **K**: Proceed as-is.
|
||||||
5. Generate `spec_file` path:
|
5. Generate `spec_file` path:
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ deferred_work_file: '{implementation_artifacts}/deferred-work.md'
|
||||||
4. If intent gaps exist, do not fantasize, do not leave open questions, HALT and ask the human.
|
4. If intent gaps exist, do not fantasize, do not leave open questions, HALT and ask the human.
|
||||||
5. Token count check (see SCOPE STANDARD). If spec exceeds 1600 tokens:
|
5. Token count check (see SCOPE STANDARD). If spec exceeds 1600 tokens:
|
||||||
- Show user the token count.
|
- Show user the token count.
|
||||||
- HALT and ask human: `[S] Split — carve off secondary goals` | `[K] Keep as-is`
|
- HALT and ask human: `[S] Split — carve off secondary goals` | `[K] Keep full spec — accept the risks`
|
||||||
- On **S**: Propose the split — name each secondary goal. Append deferred goals to `{deferred_work_file}`. Rewrite the current spec to cover only the main goal — do not surgically carve sections out; regenerate the spec for the narrowed scope. Continue to checkpoint.
|
- On **S**: Propose the split — name each secondary goal. Append deferred goals to `{deferred_work_file}`. Rewrite the current spec to cover only the main goal — do not surgically carve sections out; regenerate the spec for the narrowed scope. Continue to checkpoint.
|
||||||
- On **K**: Continue to checkpoint with full spec.
|
- On **K**: Continue to checkpoint with full spec.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ function toDashName(module, type, name) {
|
||||||
const isAgent = type === AGENT_SEGMENT;
|
const isAgent = type === AGENT_SEGMENT;
|
||||||
|
|
||||||
// For core module, skip the module name: use 'bmad-agent-name.md' instead of 'bmad-agent-core-name.md'
|
// For core module, skip the module name: use 'bmad-agent-name.md' instead of 'bmad-agent-core-name.md'
|
||||||
if (module === 'core') {
|
if (module === 'core' || module === 'standalone') {
|
||||||
return isAgent ? `bmad-agent-${name}.md` : `bmad-${name}.md`;
|
return isAgent ? `bmad-agent-${name}.md` : `bmad-${name}.md`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -177,7 +177,7 @@ function parseDashName(filename) {
|
||||||
*/
|
*/
|
||||||
function toUnderscoreName(module, type, name) {
|
function toUnderscoreName(module, type, name) {
|
||||||
const isAgent = type === AGENT_SEGMENT;
|
const isAgent = type === AGENT_SEGMENT;
|
||||||
if (module === 'core') {
|
if (module === 'core' || module === 'standalone') {
|
||||||
return isAgent ? `bmad_agent_${name}.md` : `bmad_${name}.md`;
|
return isAgent ? `bmad_agent_${name}.md` : `bmad_${name}.md`;
|
||||||
}
|
}
|
||||||
return isAgent ? `bmad_${module}_agent_${name}.md` : `bmad_${module}_${name}.md`;
|
return isAgent ? `bmad_${module}_agent_${name}.md` : `bmad_${module}_${name}.md`;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue