Skip to content

93 monorepo support#94

Merged
mathieusouflis merged 6 commits into
mainfrom
93-monorepo-support
May 15, 2026
Merged

93 monorepo support#94
mathieusouflis merged 6 commits into
mainfrom
93-monorepo-support

Conversation

@mathieusouflis
Copy link
Copy Markdown
Member

Summary

Closes #

Type of change

  • Bug fix
  • New feature
  • Refactor (no behavior change)
  • Performance improvement
  • Documentation
  • CI/CD / tooling
  • Breaking change

Changes

Testing

  • Added / updated tests
  • Manually tested locally
  • All existing tests pass

Checklist

  • Lint passes
  • Tests pass
  • Build succeeds
  • Documentation updated if applicable

Screenshots

- Add VirtualProjectState.WithPrefix for scoped per-app file writes
- Add Manifest.PathPrefix runtime field for validator and WorkDir scoping
- Executor scopes ctx.State to apps/<name>/ for loop invocations
- Runner populates PathPrefix on manifests for loop invocations
- Command planner uses PathPrefix as WorkDir fallback when WorkDir is empty
- Validator resolves check paths relative to PathPrefix
- FormWalker defers LoopQuestion.Continue to post-loop sub-form
- HuhFormRunner runs loop body sub-forms per iteration then Continue
- Add apps_count LoopQuestion with full per-app question chain
- Extract buildTSBackendChain(terminal) to eliminate duplicate question nodes
- Add resolveMonorepoGenerators, extractAppAnswers, resolveAppGenerators
- typescript_base prefers app-name answer over project_name in loop context
Writes root package.json (workspaces: ["apps/*"]) and pnpm-workspace.yaml
for TypeScript monorepos. Runs pnpm install at the project root as a
post-gen command. Depends on base_project.
…xtures

- Add scripted loop adapter to runner so JSON fixtures can drive LoopQuestion
- Add 202605140001_monorepo_multi_2apps_typescript fixture (2-app monorepo,
  clean-arch+decorators for api, mvc+prettier for web, 93 validators)
- Add enable-auth: false to the 7 single-app fixtures where enable-db is false;
  enable-auth is now always visited after enable-db in the unified question chain
- architecture.md: document WithPrefix scoping in VFS section, PathPrefix
  field on Manifest, per-app state scoping in executor Step 4, WorkDir
  resolution order in command execution
- authoring-flows.md: rewrite LoopQuestion section (count-based, Continue
  is a post-loop sub-form), update Loops section with extractIterations
  normalisation pattern, update loop invocations example
- authoring-generators.md: rewrite Loop generators section (executor handles
  path scoping via WithPrefix, generators write relative paths only), expand
  Built-in generators table to all 36 registered generators
…erator skill

- dot-add-generator: add Iron Law #5 requiring non-empty PostGenerationCommands
  and TestCommands for any generator producing typed/compiled output; add
  matching Common mistakes entry
- dot-add-question: add checklist item and Common mistakes entry requiring
  verification of both command fields on newly-wired generators
- Both skills: update docs rules to require documentation updates on every
  flow or generator change
@mathieusouflis mathieusouflis linked an issue May 15, 2026 that may be closed by this pull request
@mathieusouflis mathieusouflis marked this pull request as ready for review May 15, 2026 08:33
@github-actions
Copy link
Copy Markdown

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

@sonarqubecloud
Copy link
Copy Markdown

@mathieusouflis mathieusouflis merged commit 0b62f6f into main May 15, 2026
13 checks passed
@mathieusouflis mathieusouflis deleted the 93-monorepo-support branch May 15, 2026 08:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Monorepo support

1 participant