Skip to content

fix(build-mcpb): PATTERNS.md loaded unconditionally in normal workflow #58

@JoeCardoso13

Description

@JoeCardoso13

Problem

PATTERNS.md exists to support contributors who bypass the template scaffolding (cold start, existing repo, already-savvy contributors). That use case is valid.

However, several references to PATTERNS.md are unconditional — they fire on every run, including the normal template-based flow where Phase 0 already cloned and customized the template. In that case, the agent loads ~1200 lines of markdown describing what the project files should look like, when those files are already sitting in the working directory.

Specific instances

Phase 2 — correctly gated (no change needed)

  • "If any files are missing, create them following the patterns in references/PATTERNS.md" — conditional, correct
  • Fallback note for missing .gitignore on manual repos — explicitly a cold-start scenario, correct
  • Gate criterion "Any missing files have been created from references/PATTERNS.md" — conditional on files being missing, correct

Phase 2 — wrong

  • "See references/PATTERNS.md for full directory structure reference." (line 26) — unconditional, fires on every run

Phase 3 — all three wrong

  • "See references/PATTERNS.md → 'Python Server Patterns' for complete code examples." (line 24) — unconditional
  • "See references/PATTERNS.md → 'TypeScript Server Patterns' for complete code examples." (line 38) — unconditional
  • "See references/PATTERNS.md → 'Test Patterns (Python)' for complete examples..." (line 67) — unconditional

Proposed Fix

Gate PATTERNS.md behind the cold-start path. The cold-start flag is already established in Phase 0 (warm start vs. cold start). The four unconditional references above should become conditional: only read PATTERNS.md if this is a cold start (no template was cloned). In the normal template-based flow, Phase 3 should instruct the agent to reference the actual project files already in the working directory.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions