Skip to content

Release v4.153.0

Choose a tag to compare

@github-actions github-actions released this 13 Oct 15:04
ef59611

Summary

Screenplay now records which event revisions a release shipped, and every change through the MCP tools respects it: events that were never released can be edited in place, and released ones can only change through a new generation.

Added

  • screenplay baseline admit <root> --release <label> records every current and historical event revision with its resolved stored shape in .screenplay/release-baseline.json, a committed sidecar with a published JSON schema. --from-esm <file> admits from the canonical model a release shipped. Admission only ever adds entries, refuses a changed revision, and never runs implicitly. (#686)
  • screenplay baseline check <root> exits 1 when a baselined revision changed or is missing and 2 when the baseline is unreadable, so CI can gate edits made outside the MCP tools. (#686)
  • MCP: screenplay_list_release_baseline pages the admitted revisions with their current status, read-proposal view=release-baseline shows a proposal's effect on them, and open-workspace and workspace-state report the baseline's status, revision and violations. (#686)

Changed

  • screenplay_propose_property and screenplay_propose_rename report each event revision's mutability. Without a baseline nothing changes. Revisions outside the baseline are edited in place without choosing newGeneration or eventNeverPersisted, and their renames add no pin. Baselined revisions refuse in-place edits and eventNeverPersisted with BaselinedRevisionImmutable and accept only newGeneration. (#686)
  • Every proposal and every apply checks the candidate against the baseline: a change to a baselined revision's stored shape, including through a concept, composite type or enum it uses, refuses with BaselinedRevisionChanged, a removed one with BaselinedRevisionMissing, and a baseline that changed since the proposal with StaleReleaseBaseline. An unreadable baseline blocks only proposals that change event contracts. (#686)