fix: update masonry grid sizing logic and notebook list padding

This commit is contained in:
Sepehr Ramezani
2026-02-14 14:20:32 +01:00
parent a0ffc9043b
commit 8f9031f076
580 changed files with 9789 additions and 42619 deletions

View File

@@ -2,8 +2,6 @@
name: 'step-01-mode-detection'
description: 'Determine execution mode (tech-spec vs direct), handle escalation, set state variables'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-dev'
thisStepFile: './step-01-mode-detection.md'
nextStepFile_modeA: './step-03-execute.md'
nextStepFile_modeB: './step-02-context-gathering.md'
---
@@ -52,7 +50,7 @@ Analyze the user's input to determine mode:
- Load the spec, extract tasks/context/AC
- Set `{execution_mode}` = "tech-spec"
- Set `{tech_spec_path}` = provided path
- **NEXT:** Load `step-03-execute.md`
- **NEXT:** Read fully and follow: `step-03-execute.md`
**Mode B: Direct Instructions**
@@ -88,43 +86,63 @@ Use holistic judgment, not mechanical keyword matching.
### No Escalation (simple request)
Present choice:
Display: "**Select:** [P] Plan first (tech-spec) [E] Execute directly"
```
**[t] Plan first** - Create tech-spec then implement
**[e] Execute directly** - Start now
```
#### Menu Handling Logic:
- **[t]:** Direct user to `{quick_spec_workflow}`. **EXIT Quick Dev.**
- **[e]:** Ask for any additional guidance, then **NEXT:** Load `step-02-context-gathering.md`
- IF P: Direct user to `{quick_spec_workflow}`. **EXIT Quick Dev.**
- IF E: Ask for any additional guidance, then **NEXT:** Read fully and follow: `step-02-context-gathering.md`
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed when user makes a selection
---
### Escalation Triggered - Level 0-2
```
This looks like a focused feature with multiple components.
Present: "This looks like a focused feature with multiple components."
**[t] Create tech-spec first** (recommended)
**[w] Seems bigger than quick-dev** - see what BMad Method recommends
**[e] Execute directly**
```
Display:
- **[t]:** Direct to `{quick_spec_workflow}`. **EXIT Quick Dev.**
- **[w]:** Direct to `{workflow_init}`. **EXIT Quick Dev.**
- **[e]:** Ask for guidance, then **NEXT:** Load `step-02-context-gathering.md`
**[P] Plan first (tech-spec)** (recommended)
**[W] Seems bigger than quick-dev** - Recommend the Full BMad Flow PRD Process
**[E] Execute directly**
#### Menu Handling Logic:
- IF P: Direct to `{quick_spec_workflow}`. **EXIT Quick Dev.**
- IF W: Direct user to run the PRD workflow instead. **EXIT Quick Dev.**
- IF E: Ask for guidance, then **NEXT:** Read fully and follow: `step-02-context-gathering.md`
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed when user makes a selection
---
### Escalation Triggered - Level 3+
```
This sounds like platform/system work.
Present: "This sounds like platform/system work."
**[w] Start BMad Method** (recommended)
**[t] Create tech-spec** (lighter planning)
**[e] Execute directly** - feeling lucky
```
Display:
- **[w]:** Direct to `{workflow_init}`. **EXIT Quick Dev.**
- **[t]:** Direct to `{quick_spec_workflow}`. **EXIT Quick Dev.**
- **[e]:** Ask for guidance, then **NEXT:** Load `step-02-context-gathering.md`
**[W] Start BMad Method** (recommended)
**[P] Plan first (tech-spec)** (lighter planning)
**[E] Execute directly** - feeling lucky
#### Menu Handling Logic:
- IF P: Direct to `{quick_spec_workflow}`. **EXIT Quick Dev.**
- IF W: Direct user to run the PRD workflow instead. **EXIT Quick Dev.**
- IF E: Ask for guidance, then **NEXT:** Read fully and follow: `step-02-context-gathering.md`
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed when user makes a selection
---
@@ -132,9 +150,9 @@ This sounds like platform/system work.
**CRITICAL:** When this step completes, explicitly state which step to load:
- Mode A (tech-spec): "**NEXT:** Loading `step-03-execute.md`"
- Mode B (direct, [e] selected): "**NEXT:** Loading `step-02-context-gathering.md`"
- Escalation ([t] or [w]): "**EXITING Quick Dev.** Follow the directed workflow."
- Mode A (tech-spec): "**NEXT:** read fully and follow: `step-03-execute.md`"
- Mode B (direct, [E] selected): "**NEXT:** Read fully and follow: `step-02-context-gathering.md`"
- Escalation ([P] or [W]): "**EXITING Quick Dev.** Follow the directed workflow."
---

View File

@@ -2,8 +2,6 @@
name: 'step-02-context-gathering'
description: 'Quick context gathering for direct mode - identify files, patterns, dependencies'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-dev'
thisStepFile: './step-02-context-gathering.md'
nextStepFile: './step-03-execute.md'
---
@@ -99,7 +97,7 @@ Ready to execute? (y/n/adjust)
**CRITICAL:** When user confirms ready, explicitly state:
- **y:** "**NEXT:** Loading `step-03-execute.md`"
- **y:** "**NEXT:** Read fully and follow: `step-03-execute.md`"
- **n/adjust:** Continue gathering context, then re-present plan
---

View File

@@ -2,8 +2,6 @@
name: 'step-03-execute'
description: 'Execute implementation - iterate through tasks, write code, run tests'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-dev'
thisStepFile: './step-03-execute.md'
nextStepFile: './step-04-self-check.md'
---
@@ -91,7 +89,7 @@ For each task:
## NEXT STEP
When ALL tasks are complete (or halted on blocker), load `step-04-self-check.md`.
When ALL tasks are complete (or halted on blocker), read fully and follow: `step-04-self-check.md`.
---

View File

@@ -2,8 +2,6 @@
name: 'step-04-self-check'
description: 'Self-audit implementation against tasks, tests, AC, and patterns'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-dev'
thisStepFile: './step-04-self-check.md'
nextStepFile: './step-05-adversarial-review.md'
---

View File

@@ -2,8 +2,6 @@
name: 'step-05-adversarial-review'
description: 'Construct diff and invoke adversarial review task'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-dev'
thisStepFile: './step-05-adversarial-review.md'
nextStepFile: './step-06-resolve-findings.md'
---
@@ -59,13 +57,13 @@ Merge all changes into `{diff_output}`.
### 2. Invoke Adversarial Review
With `{diff_output}` constructed, invoke the review task. If possible, use information asymmetry: run this step, and only it, in a separate subagent or process with read access to the project, but no context except the `{diff_output}`.
With `{diff_output}` constructed, load and follow the review task. If possible, use information asymmetry: load this step, and only it, in a separate subagent or process with read access to the project, but no context except the `{diff_output}`.
```xml
<invoke-task>Review {diff_output} using {project-root}/_bmad/core/tasks/review-adversarial-general.xml</invoke-task>
```
**Platform fallback:** If task invocation not available, load the task file and execute its instructions inline, passing `{diff_output}` as the content.
**Platform fallback:** If task invocation not available, load the task file and follow its instructions inline, passing `{diff_output}` as the content.
The task should: review `{diff_output}` and return a list of findings.
@@ -85,7 +83,7 @@ If TodoWrite or similar tool is available, turn each finding into a TODO, includ
## NEXT STEP
With findings in hand, load `step-06-resolve-findings.md` for user to choose resolution approach.
With findings in hand, read fully and follow: `step-06-resolve-findings.md` for user to choose resolution approach.
---

View File

@@ -1,9 +1,6 @@
---
name: 'step-06-resolve-findings'
description: 'Handle review findings interactively, apply fixes, update tech-spec with final status'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-dev'
thisStepFile: './step-06-resolve-findings.md'
---
# Step 6: Resolve Findings
@@ -25,19 +22,28 @@ From previous steps:
## RESOLUTION OPTIONS
Present choice to user:
Present: "How would you like to handle these findings?"
```
How would you like to handle these findings?
Display:
**[1] Walk through** - Discuss each finding individually
**[2] Auto-fix** - Automatically fix issues classified as "real"
**[3] Skip** - Acknowledge and proceed to commit
```
**[W] Walk through** - Discuss each finding individually
**[F] Fix automatically** - Automatically fix issues classified as "real"
**[S] Skip** - Acknowledge and proceed to commit
### Menu Handling Logic:
- IF W: Execute WALK THROUGH section below
- IF F: Execute FIX AUTOMATICALLY section below
- IF S: Execute SKIP section below
### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed when user makes a selection
---
## OPTION 1: WALK THROUGH
## WALK THROUGH [W]
For each finding in order:
@@ -52,7 +58,7 @@ After all findings processed, summarize what was fixed/skipped.
---
## OPTION 2: AUTO-FIX
## FIX AUTOMATICALLY [F]
1. Filter findings to only those classified as "real"
2. Apply fixes for each real finding
@@ -69,7 +75,7 @@ Skipped (noise/uncertain): F2, F4
---
## OPTION 3: SKIP
## SKIP [S]
1. Acknowledge all findings were reviewed
2. Note that user chose to proceed without fixes

View File

@@ -36,12 +36,10 @@ Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
- `installed_path` = `{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-dev`
- `project_context` = `**/project-context.md` (load if exists)
- `project_levels` = `{project-root}/_bmad/bmm/workflows/workflow-status/project-levels.yaml`
### Related Workflows
- `quick_spec_workflow` = `{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md`
- `workflow_init` = `{project-root}/_bmad/bmm/workflows/workflow-status/init/workflow.yaml`
- `party_mode_exec` = `{project-root}/_bmad/core/workflows/party-mode/workflow.md`
- `advanced_elicitation` = `{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml`
@@ -49,4 +47,4 @@ Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve:
## EXECUTION
Load and execute `steps/step-01-mode-detection.md` to begin the workflow.
Read fully and follow: `steps/step-01-mode-detection.md` to begin the workflow.

View File

@@ -2,10 +2,9 @@
name: 'step-01-understand'
description: 'Analyze the requirement delta between current state and what user wants to build'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/create-tech-spec'
nextStepFile: './step-02-investigate.md'
skipToStepFile: './step-03-generate.md'
templateFile: '{workflow_path}/tech-spec-template.md'
templateFile: '../tech-spec-template.md'
wipFile: '{implementation_artifacts}/tech-spec-wip.md'
---
@@ -47,20 +46,20 @@ Hey {user_name}! Found a tech-spec in progress:
Is this what you're here to continue?
[y] Yes, pick up where I left off
[n] No, archive it and start something new
[Y] Yes, pick up where I left off
[N] No, archive it and start something new
```
4. **HALT and wait for user selection.**
a) **Menu Handling:**
- **[y] Continue existing:**
- **[Y] Continue existing:**
- Jump directly to the appropriate step based on `stepsCompleted`:
- `[1]` → Load `{nextStepFile}` (Step 2)
- `[1, 2]` → Load `{skipToStepFile}` (Step 3)
- `[1, 2, 3]` → Load `./step-04-review.md` (Step 4)
- **[n] Archive and start fresh:**
- **[N] Archive and start fresh:**
- Rename `{wipFile}` to `{implementation_artifacts}/tech-spec-{slug}-archived-{date}.md`
### 1. Greet and Ask for Initial Request
@@ -162,19 +161,22 @@ b) **Report to user:**
a) **Display menu:**
```
[a] Advanced Elicitation - dig deeper into requirements
[c] Continue - proceed to next step
[p] Party Mode - bring in other experts
```
Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Deep Investigation (Step 2 of 4)"
b) **HALT and wait for user selection.**
#### Menu Handling:
#### Menu Handling Logic:
- **[a]**: Load and execute `{advanced_elicitation}`, then return here and redisplay menu
- **[c]**: Load and execute `{nextStepFile}` (Map Technical Constraints)
- **[p]**: Load and execute `{party_mode_exec}`, then return here and redisplay menu
- IF A: Read fully and follow: `{advanced_elicitation}` with current tech-spec content, process enhanced insights, ask user "Accept improvements? (y/n)", if yes update WIP file then redisplay menu, if no keep original then redisplay menu
- IF P: Read fully and follow: `{party_mode_exec}` with current tech-spec content, process collaborative insights, ask user "Accept changes? (y/n)", if yes update WIP file then redisplay menu, if no keep original then redisplay menu
- IF C: Verify `{wipFile}` has `stepsCompleted: [1]`, then read fully and follow: `{nextStepFile}`
- IF Any other comments or queries: respond helpfully then redisplay menu
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed to next step when user selects 'C'
- After A or P execution, return to this menu
---
@@ -186,4 +188,4 @@ b) **HALT and wait for user selection.**
- [ ] WIP check performed FIRST before any greeting.
- [ ] `{wipFile}` created with correct frontmatter, Overview, Context for Development, and `stepsCompleted: [1]`.
- [ ] User selected [c] to continue.
- [ ] User selected [C] to continue.

View File

@@ -2,7 +2,6 @@
name: 'step-02-investigate'
description: 'Map technical constraints and anchor points within the codebase'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/create-tech-spec'
nextStepFile: './step-03-generate.md'
wipFile: '{implementation_artifacts}/tech-spec-wip.md'
---
@@ -115,21 +114,22 @@ Fill in:
### 4. Present Checkpoint Menu
**Display menu:**
```
[a] Advanced Elicitation - explore more context
[c] Continue - proceed to Generate Spec
[p] Party Mode - bring in other experts
```
Display: "**Select:** [A] Advanced Elicitation [P] Party Mode [C] Continue to Generate Spec (Step 3 of 4)"
**HALT and wait for user selection.**
#### Menu Handling:
#### Menu Handling Logic:
- **[a]**: Load and execute `{advanced_elicitation}`, then return here and redisplay menu
- **[c]**: Verify frontmatter updated with `stepsCompleted: [1, 2]`, then load and execute `{nextStepFile}`
- **[p]**: Load and execute `{party_mode_exec}`, then return here and redisplay menu
- IF A: Read fully and follow: `{advanced_elicitation}` with current tech-spec content, process enhanced insights, ask user "Accept improvements? (y/n)", if yes update WIP file then redisplay menu, if no keep original then redisplay menu
- IF P: Read fully and follow: `{party_mode_exec}` with current tech-spec content, process collaborative insights, ask user "Accept changes? (y/n)", if yes update WIP file then redisplay menu, if no keep original then redisplay menu
- IF C: Verify frontmatter updated with `stepsCompleted: [1, 2]`, then read fully and follow: `{nextStepFile}`
- IF Any other comments or queries: respond helpfully then redisplay menu
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed to next step when user selects 'C'
- After A or P execution, return to this menu
---

View File

@@ -2,7 +2,6 @@
name: 'step-03-generate'
description: 'Build the implementation plan based on the technical mapping of constraints'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/create-tech-spec'
nextStepFile: './step-04-review.md'
wipFile: '{implementation_artifacts}/tech-spec-wip.md'
---
@@ -114,7 +113,7 @@ stepsCompleted: [1, 2, 3]
---
```
c) **Load and execute `{nextStepFile}` (Step 4)**
c) **Read fully and follow: `{nextStepFile}` (Step 4)**
## REQUIRED OUTPUTS:

View File

@@ -2,7 +2,6 @@
name: 'step-04-review'
description: 'Review and finalize the tech-spec'
workflow_path: '{project-root}/_bmad/bmm/workflows/bmad-quick-flow/quick-spec'
wipFile: '{implementation_artifacts}/tech-spec-wip.md'
---
@@ -39,9 +38,28 @@ wipFile: '{implementation_artifacts}/tech-spec-wip.md'
- {task_count} tasks to implement
- {ac_count} acceptance criteria to verify
- {files_count} files to modify
- {files_count} files to modify"
Does this capture your intent? Any changes needed?"
**Present review menu:**
Display: "**Select:** [C] Continue [E] Edit [Q] Questions [A] Advanced Elicitation [P] Party Mode"
**HALT and wait for user selection.**
#### Menu Handling Logic:
- IF C: Proceed to Section 3 (Finalize the Spec)
- IF E: Proceed to Section 2 (Handle Review Feedback), then return here and redisplay menu
- IF Q: Answer questions, then redisplay this menu
- IF A: Read fully and follow: `{advanced_elicitation}` with current spec content, process enhanced insights, ask user "Accept improvements? (y/n)", if yes update spec then redisplay menu, if no keep original then redisplay menu
- IF P: Read fully and follow: `{party_mode_exec}` with current spec content, process collaborative insights, ask user "Accept changes? (y/n)", if yes update spec then redisplay menu, if no keep original then redisplay menu
- IF Any other comments or queries: respond helpfully then redisplay menu
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed to finalize when user selects 'C'
- After other menu items execution, return to this menu
### 2. Handle Review Feedback
@@ -96,11 +114,11 @@ Saved to: {finalFile}
**Next Steps:**
[a] Advanced Elicitation - refine further
[r] Adversarial Review - critique of the spec (highly recommended)
[b] Begin Development - start implementing now (not recommended)
[d] Done - exit workflow
[p] Party Mode - get expert feedback before dev
[A] Advanced Elicitation - refine further
[R] Adversarial Review - critique of the spec (highly recommended)
[B] Begin Development - start implementing now (not recommended)
[D] Done - exit workflow
[P] Party Mode - get expert feedback before dev
---
@@ -117,17 +135,26 @@ This ensures the dev agent has clean context focused solely on implementation.
b) **HALT and wait for user selection.**
#### Menu Handling:
#### Menu Handling Logic:
- **[a]**: Load and execute `{advanced_elicitation}`, then return here and redisplay menu
- **[b]**: Load and execute `{quick_dev_workflow}` with the final spec file (warn: fresh context is better)
- **[d]**: Exit workflow - display final confirmation and path to spec
- **[p]**: Load and execute `{party_mode_exec}`, then return here and redisplay menu
- **[r]**: Execute Adversarial Review:
1. **Invoke Adversarial Review Task**:
> With `{finalFile}` constructed, invoke the review task. If possible, use information asymmetry: run this task, and only it, in a separate subagent or process with read access to the project, but no context except the `{finalFile}`.
- IF A: Read fully and follow: `{advanced_elicitation}` with current spec content, process enhanced insights, ask user "Accept improvements? (y/n)", if yes update spec then redisplay menu, if no keep original then redisplay menu
- IF B: Read the entire workflow file at `{quick_dev_workflow}` and follow the instructions with the final spec file (warn: fresh context is better)
- IF D: Exit workflow - display final confirmation and path to spec
- IF P: Read fully and follow: `{party_mode_exec}` with current spec content, process collaborative insights, ask user "Accept changes? (y/n)", if yes update spec then redisplay menu, if no keep original then redisplay menu
- IF R: Execute Adversarial Review (see below)
- IF Any other comments or queries: respond helpfully then redisplay menu
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- After A, P, or R execution, return to this menu
#### Adversarial Review [R] Process:
1. **Invoke Adversarial Review Task**:
> With `{finalFile}` constructed, load and follow the review task. If possible, use information asymmetry: load this task, and only it, in a separate subagent or process with read access to the project, but no context except the `{finalFile}`.
<invoke-task>Review {finalFile} using {project-root}/_bmad/core/tasks/review-adversarial-general.xml</invoke-task>
> **Platform fallback:** If task invocation not available, load the task file and execute its instructions inline, passing `{finalFile}` as the content.
> **Platform fallback:** If task invocation not available, load the task file and follow its instructions inline, passing `{finalFile}` as the content.
> The task should: review `{finalFile}` and return a list of findings.
2. **Process Findings**:
@@ -143,7 +170,7 @@ b) **HALT and wait for user selection.**
### 5. Exit Workflow
**When user selects [d]:**
**When user selects [D]:**
"**All done!** Your tech-spec is ready at:

View File

@@ -2,7 +2,6 @@
name: quick-spec
description: Conversational spec engineering - ask questions, investigate code, produce implementation-ready tech-spec.
main_config: '{project-root}/_bmad/bmm/config.yaml'
web_bundle: true
# Checkpoint handler paths
advanced_elicitation: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
@@ -47,9 +46,9 @@ This uses **step-file architecture** for disciplined execution:
1. **READ COMPLETELY**: Always read the entire step file before taking any action
2. **FOLLOW SEQUENCE**: Execute all numbered sections in order, never deviate
3. **WAIT FOR INPUT**: If a menu is presented, halt and wait for user selection
4. **CHECK CONTINUATION**: Only proceed to next step when user selects [c] (Continue)
4. **CHECK CONTINUATION**: Only proceed to next step when user selects [C] (Continue)
5. **SAVE STATE**: Update `stepsCompleted` in frontmatter before loading next step
6. **LOAD NEXT**: When directed, load and read entire next step file, then execute
6. **LOAD NEXT**: When directed, read fully and follow the next step file
### Critical Rules (NO EXCEPTIONS)
@@ -76,4 +75,4 @@ Load and read full config from `{main_config}` and resolve:
### 2. First Step Execution
Load, read the full file, and then execute `steps/step-01-understand.md` to begin the workflow.
Read fully and follow: `steps/step-01-understand.md` to begin the workflow.