Skip to content

Generate Screenplay from Marten and Critter Stack source - #84

Merged
woksin merged 8 commits into
mainfrom
feat/critter-stack-screenplay
Aug 21, 2026
Merged

Generate Screenplay from Marten and Critter Stack source#84
woksin merged 8 commits into
mainfrom
feat/critter-stack-screenplay

Conversation

@woksin

@woksin woksin commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator

Summary

Extends cratis screenplay generate from Arc-only source analysis to built-in Arc, Marten, and Marten + Wolverine providers while preserving source-only, reproducible generation.

Added

  • Add --provider auto|arc|marten|critter-stack with conservative source-framework detection.
  • Generate verified Screenplay definitions from Marten and Critter Stack projects through the new official adapter package.
  • Add a real package compatibility spec and end-to-end validation for Arc, BankAccountES, and canonical IncidentService source.

Changed

  • Align Arc Screenplay, Screenplay, Stage, and Prologue packages on the current Screenplay 4 generation.
  • Retain markerless non-spec projects for Critter Stack analysis while preserving Arc-specific project filtering.

woksin added 3 commits August 21, 2026 03:26
Route source generation through built-in Arc, Marten, or combined Critter Stack packages while reusing one MSBuild workspace. Align Screenplay, Stage, Prologue, and Arc package generations to avoid runtime syntax-tree incompatibilities.
@woksin woksin added the minor New features, non-breaking additions label Aug 21, 2026
@woksin
woksin marked this pull request as draft August 21, 2026 01:51
@woksin

woksin commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator Author

Implementation and local end-to-end verification are complete. Keeping this draft until Cratis.Screenplay.Generation and Cratis.CritterStack.Screenplay 0.1.0 are available from nuget.org (tracked in Cratis/Screenplay.Generation#2 and Cratis/Screenplay.CritterStack#1). PR CI bootstraps the verified release assets only to validate this branch; the CLI release must consume the published packages.

@woksin

woksin commented Aug 21, 2026

Copy link
Copy Markdown
Collaborator Author

All PR checks now pass, including the package-bootstrapped Release build and all 500 CLI specs plus 164 Chronicle integration specs. The first integration attempt hit a transient invalid fixture login; the failed job rerun passed. This remains draft solely until the upstream 0.1.0 packages are available from nuget.org.

woksin added 3 commits August 21, 2026 23:10
MSBuildWorkspace can omit .NET reference-pack assemblies when the CLI analyzes projects targeting an earlier installed framework. Add the matching reference packs before generation so net7/net9 source resolves real framework symbols instead of silently omitting artifacts or inventing error-symbol events.
Fail Critter Stack generation when source does not compile and reject solutions with multiple deployable hosts unless the user targets one project. This prevents apparently valid partial models and accidental application merges.
Replace the hardcoded framework switch with an allowlisted provider registry. Providers self-describe matching, specificity, host constraints, and generation; auto mode selects Critter Stack over its Marten base and reports unrelated ambiguity. Bootstrap release builds from verified package assets until NuGet publication is available.
@woksin
woksin marked this pull request as ready for review August 21, 2026 21:54
@woksin
woksin merged commit fbfc89b into main Aug 21, 2026
4 checks passed
@woksin
woksin deleted the feat/critter-stack-screenplay branch August 21, 2026 22:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

minor New features, non-breaking additions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant